Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsWhite Papers
Discussion GroupsFirst AidDatabasesJavaBeansGUIJava 3DVirtual MachineCORBASecurityToolsGeneral
Java DirectoryOpen Source ProjectsSample Book ChaptersUser GroupsWeb Resources
Related Topics
Databases.NETMore Topics ...

Java Forum / General / June 2007

Tip: Looking for answers? Try searching our database.

SOAP Message Problem / WEB SERVICES

Thread view: 
norby - 20 Jun 2007 14:42 GMT
Hi all,

I'm having a lot of problems trying to create an web service client.
My server is provided by an Jboss/TomCat?axis server that enables me
various methods. The connection is a normal SSL connection with
authentication(nothing big till this point). The problems start when I
try to create a connection to the server using the POST request. If I
use the GET request I get back a HTTP 500 code reply. This also
happens while using the GET method when I initialize the OutputStream
object of the established connection.

In the server side I collect the following AXIS server error:

AxisFault
faultCode: {http://xml.apache.org/axis/}Client.NoSOAPAction
faultSubcode:
faultString: no SOAPAction header!
faultActor:
faultNode:
faultDetail:
    {http://xml.apache.org/axis/}stackTrace: AxisFault
faultCode: {http://xml.apache.org/axis/}Client.NoSOAPAction
faultSubcode:
faultString: no SOAPAction header!
faultActor:
faultNode:
faultDetail:

no SOAPAction header!
    at
org.apache.axis.transport.http.AxisServlet.getSoapAction(AxisServlet.java:
1121)
    at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:
835)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at
org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:
339)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
237)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
157)
    at
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:
75)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
186)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
157)
    at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
214)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
104)
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
520)
    at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:
198)
    at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
152)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
104)
    at
org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:
66)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
102)
    at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:
158)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
102)
    at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:
540)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
102)
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
520)
    at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
137)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
104)
    at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
118)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
102)
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
520)
    at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:
109)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
104)
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
520)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:
929)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:
160)
    at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:
799)
    at org.apache.coyote.http11.Http11Protocol
$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
    at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:
577)
    at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadPool.java:683)
    at java.lang.Thread.run(Thread.java:619)

no SOAPAction header!
    at
org.apache.axis.transport.http.AxisServlet.getSoapAction(AxisServlet.java:
1121)
    at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:
835)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at
org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:
339)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
237)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
157)
    at
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:
75)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
186)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
157)
    at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
214)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
104)
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
520)
    at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:
198)
    at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
152)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
104)
    at
org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:
66)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
102)
    at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:
158)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
102)
    at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:
540)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
102)
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
520)
    at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
137)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
104)
    at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
118)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
102)
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
520)
    at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:
109)
    at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:
104)
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
520)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:
929)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:
160)
    at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:
799)
    at org.apache.coyote.http11.Http11Protocol
$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
    at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:
577)
    at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadPool.java:683)
    at java.lang.Thread.run(Thread.java:619)

I have googled the error and I could find that I'm not alone in this
world:) the only problem is that many of the mailing lists that I've
consulted and advisory web sites have are left without a conclusion
( which is the most frustrating thing ever, I shall all burn in
hell!!!).
The problem is clearly related with soap message header (SOAPAction
header missing!) but I definitely can't find a good example for the
resolution of this problem !

Help please!
Ian Wilson - 20 Jun 2007 15:33 GMT
> I'm having a lot of problems trying to create an web service client.
> My server is provided by an Jboss/TomCat?axis server

<snip>

> In the server side I collect the following AXIS server error:
>
> AxisFault
>  faultString: no SOAPAction header!

<long boring stack dump deleted>

> The problem is clearly related with soap message header (SOAPAction
> header missing!) but I definitely can't find a good example for the
> resolution of this problem !

In on of my web-service clients I use
  httpConn.setRequestProperty("SOAPAction", action);
but since you don't say anything about the classes used in your client
I've no idea how relevant this is to you.

A few seconds with Google brings up stuff like
  call.setProperty(Call.SOAPACTION_USE_PROPERTY, new Boolean(true));
  call.setProperty(Call.SOAPACTION_URI_PROPERTY, action);

Hope that helps.
norby - 20 Jun 2007 16:59 GMT
> > I'm having a lot of problems trying to create an web service client.
> > My server is provided by an Jboss/TomCat?axis server
[quoted text clipped - 22 lines]
>
> Hope that helps.

Hi there
Thanks for the reply Ian (true is f%*king boring the stack
message,sorry about that guys!) I'm using for the HttpsConn object and
I used the "httpSConn.setRequestProperty("SOAPAction", action);" and
still no good.
About the call.property() also try that using a different client and
still the same ID10T result.
Ian Wilson - 20 Jun 2007 17:32 GMT
>>>I'm having a lot of problems trying to create an web service client.
>>>My server is provided by an Jboss/TomCat?axis server
[quoted text clipped - 28 lines]
> I used the "httpSConn.setRequestProperty("SOAPAction", action);" and
> still no good.

Are you still getting AxisFault ... faultString: no SOAPAction header!
If so I'd use a network sniffer (or turn up the logging) to view what is
actually being transmitted.

> About the call.property() also try that using a different client and
> still the same ID10T result.

A potential issue that the action needs to have quotes
  String action = "\"http://foo/bar\"";

For better help, I'd construct and post an SSCCE
  http://mindprod.com/jgloss/sscce.html

P.S.

"no SOAPAction header" isn't what I would class as an 'idiotic' result
(unless of course it transpires that you are sending the correct header)

Idiotic (or at least misleadingly unhelpful) results I have seen include
  SAXException: Content not allowed in prolog.
  SAXParseException: Premature end of file.
Which were not caused by having content in the prolog or by ending the
transmitted data stream prematurely. They arose from misspelled
namespaces, tags or attributes.


Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2009 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.