which is what Websphere does ;-)




"Samisa Abeysinghe" <[EMAIL PROTECTED]>

12/05/2005 09:31

Please respond to
"Apache AXIS C User List"

To
"Apache AXIS C User List" <axis-c-user@ws.apache.org>
cc
Subject
RE: soapAction and .NET interoperability





Surely picking from SOAPAction is a bad idea as this is not something mandatory.

 

Then the other sensible means of doing this is to look in the SOAP body and understand what method to invoke.

 

Thanks,

Samisa…

 

 

-----Original Message-----
From:
John Hawkins [mailto:[EMAIL PROTECTED]
Sent:
Thursday, May 12, 2005 2:18 PM
To:
Apache AXIS C User List
Subject:
RE: soapAction and .NET interoperability

 


Do we have a clear direction that we should be heading to? What is the way we should be finding the operation we're calling?


.NET and  Websphere for example have different methods - which should we adopt (or some other third method?)



"Samisa Abeysinghe" <[EMAIL PROTECTED]>

12/05/2005 06:37


Please respond to
"Apache AXIS C User List"


To
"Apache AXIS C User List" <axis-c-user@ws.apache.org>
cc
 
Subject
RE: soapAction and .NET interoperability

 


   




Yes, Axis C++ server side is looking for a soap action of the form:
ServiceName#MethodName

It uses the MethodName to locate the method to be invoked.
This is not a very good practice and is something that need be fixed.


Thanks,
Samisa...


-----Original Message-----
From: Yampolsky, Robert [mailto:[EMAIL PROTECTED]
Sent: Wednesday, May 11, 2005 8:39 PM
To: Apache AXIS C User List
Subject: RE: soapAction and .NET interoperability

Does Axis require the SOAPAction to be formatted with a '#' separating
the service and method?  All the Microsoft documentation I've Googled
about setting SOAPAction from their stuff shows it formatted like a URL
with a slash setting off the method.  Would Axis reject this?

By the way, I haven't actually tested with a .NET client.  I'm just
assuming they don't send SOAPAction, because the WSDL I was given to
implement was generated with .NET tools, and it had soapAction="".  I
couldn't get my Axis-to-Axis code to work until I filled in at least
#method there (the service name doesn't seem to be necessary).

-----Original Message-----
From: Samisa Abeysinghe [mailto:[EMAIL PROTECTED]
Sent: Wednesday, May 11, 2005 12:03 AM
To: Apache AXIS C User List
Subject: RE: soapAction and .NET interoperability

> Does anybody know of a workaround for this?  Either a way to define my
> service to not require soapAction or a way to
> get a .NET client to provide the method name in the soapAction header?

There is no way in Axis C++ to define the service not to require the
SOAPAction as of now. (But we wish to implement such kind of a mechanism
- there is a Jira issue raised on this)

Hence I think you have to figure out how to set the SOAPAction with .net
client. I am not sure how to do this exactly but
http://msdn.microsoft.com/library/default.asp?url=""> tml/frlrfSystemRuntimeRemotingMetadataSoapMethodAttributeClassSoapAction
Topic.asp may lead to a clue.

Thanks,
Samisa...

-----Original Message-----
From: Yampolsky, Robert [mailto:[EMAIL PROTECTED]
Sent: Wednesday, May 11, 2005 2:39 AM
To: Apache AXIS C User List
Subject: soapAction and .NET interoperability

I've seen posted here that Axis services don't work with soapAction set
to "".  I can verify that that's the case.  With no soapAction, I get a
"Soap method is not allowed to invoke" exception, but when I put it in,
I'm able to access the service.  As a matter of fact, it seems to only
require the method (i.e.  soapAction="#METHOD" works just as well as
soapAction="SERVICE#METHOD").

My problem is that I need to interoperate with .NET clients, and they
don't seem to set soapAction (at least by default).

Does anybody know of a workaround for this?  Either a way to define my
service to not require soapAction or a way to
get a .NET client to provide the method name in the soapAction header?

Thanks,
Rob

Reply via email to