axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kevin.Bed...@sunlife.com
Subject RE: Interesting TAG -> Code Questions
Date Thu, 27 Jun 2002 18:08:49 GMT

Tom -

Will this tag lib make its way into Cold Fusion?






Tom Jordahl <tomj@macromedia.com> on 06/27/2002 02:22:19 PM

Please respond to axis-user@xml.apache.org

To:   "'axis-user@xml.apache.org'" <axis-user@xml.apache.org>
cc:    (bcc: Kevin Bedell/Systems/USHO/SunLife)
Subject:  RE: Interesting TAG -> Code Questions



Hi Mick,

First, let me just point out that the webservice tag you are using is a
feature of JRun, not part of Axis.  I am glad you are having success with
the tag, since I wrote it.

Anyway, to answer your Axis coding questions

1. You need to register a type mapping. You need the following call:

 call.registerTypeMapping(
  com.themindelectric.www.LocationInfo.class,
  new QName(
   "http://www.themindelectric.com/package/com.esri.is.services.common/"
   "LocationInfo"),
  org.apache.axis.encoding.ser.BeanSerializerFactory.class,
  org.apache.axis.encoding.ser.BeanDeserializerFactory.class);

2. You need to set a SoapAction in the tag (use soapaction="") or in the
  Call:
  call.setUseSOAPAction(true);
  call.setSOAPActionURI("action here");

For .NET, you will probably need to set the style= attribute when using the
tag to "wrapped" and the use= attribute to "literal".

A really good way to figure out what Axis client code is needed is to run
the WSDL2Java tool on the WSDL for the service you are trying to access,
then examining the Stub code that is generated.


--
Tom Jordahl
Macromedia




-----Original Message-----
From: Mick Robinson [mailto:mrobinson@mapcloud.com]
Sent: Thursday, June 27, 2002 2:05 PM
To: axis-user@xml.apache.org
Subject: Interesting TAG -> Code Questions



Hello, I'm Mick, I'm new to the list, and it's a pleasure meeting
everyone, I see big things happening between all of us! :)

Ok lets get to the point. I got 2 things.

First, I've been very successful consuming web services in JSP with the
use of the webservice taglib. What I need to do now is consume using
straight code.  This is what I got so far:
------------------------
If this is the taglib:
------------------------
<web:invoke
url="http://www.geographynetwork.com/services/v1/PlaceFinder"
namespace="http://www.geographynetwork.com/PlaceFinder"
operation="findPlace"
resultType="LocationInfo"
result="myResult"
scope="page">
<web:param name="arg0" value="Paris"/>
</web:invoke>

<% locationInfo = (LocationInfo)pageContext.getAttribute("myResult",
pageContext.PAGE_SCOPE); %>

------------------------
Then this is the code I've come up with so far, please let me know if
I'm missing anything:
------------------------
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new
java.net.URL("http://www.geographynetwork.com/services/v1/PlaceFinder"))
;
call.setOperationName(new
QName("http://www.geographynetwork.com/PlaceFinder","findPlace"));

locationInfo = (LocationInfo) call.invoke( new Object[] { "Paris" } );

------------------------
Now that code doesn't work, because I'm missing a key ingredient, my
MAIN question, is what is the code equivalent of the following tag (the
key ingredient:)):
------------------------
<web:beanmapping class="com.themindelectric.www.LocationInfo"
namespace="http://www.themindelectric.com/package/com.esri.is.services.c
ommon/" type="LocationInfo"/>

------------------------

I hope someone can help me out with that, or point in the right
direction, I couldn't find anything about that for code.

My Second thing is, I have never been able to consume a service written
in .NET, no matter what the service, or what it returns, I always get a
"500 Server did not recognize the value of HTTP Header SOAPAction:"
error? Anyone know what I got to do to consume to a .NET web service?

Thanks in advance!
Mick

_________________________
Mick Robinson
MapCloud Services Inc
1200-1185 West Georgia St
Vancouver B.C.
604-895-7611 (P)
604-682-3497 (F)









Mime
View raw message