Bug 780226 - (SOA-2613) Subset of web-service related quickstarts does not work with CXF part II.
Subset of web-service related quickstarts does not work with CXF part II.
Status: CLOSED DUPLICATE of bug 780178
Product: JBoss Enterprise SOA Platform 5
Classification: JBoss
Component: JBossESB, Examples (Show other bugs)
5.1.0.ER3
Unspecified Unspecified
urgent Severity urgent
: ---
: 5.1.0 GA
Assigned To: Kevin Conner
http://jira.jboss.org/jira/browse/SOA...
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2010-11-25 08:20 EST by Martin Vecera
Modified: 2010-12-01 13:05 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-12-01 13:05:25 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
JBoss Issue Tracker SOA-2613 None None None Never

  None (edit)
Description Martin Vecera 2010-11-25 08:20:23 EST
project_key: SOA

The following QSs do not work with CXF as well:
webservice_wsaddressing
webservice_proxy_basic
Comment 1 Martin Vecera 2010-11-25 08:20:24 EST
Link: Added: This issue Cloned from SOA-2440
Comment 2 Martin Vecera 2010-11-25 08:22:49 EST
Link: Removed: This issue Cloned from SOA-2440 
Comment 3 Martin Vecera 2010-11-25 08:23:13 EST
Link: Added: This issue is related to SOA-2440
Comment 4 Martin Vecera 2010-11-25 08:29:52 EST
webservice_proxy_basic - the WS returns 404 instead of 200:
     [java] ****  REQUEST  URL: http://localhost:8080/Quickstart_webservice_proxy_basic/http/Proxy_Basic/Proxy
     [java] ****  REQUEST BODY: <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:hello="http://webservice_proxy_basic/helloworld"><soapenv:Header/><soapenv:Body><hello:sayHello><toWhom>mvecera</toWhom></hello:sayHello></soapenv:Body></soapenv:Envelope>
     [java] 14:25:20,570 DEBUG [main][header] >> "POST /Quickstart_webservice_proxy_basic/http/Proxy_Basic/Proxy HTTP/1.1[\r][\n]"
     [java] 14:25:20,588 DEBUG [main][header] >> "Content-Type: text/xml;charset=UTF-8[\r][\n]"
     [java] 14:25:20,588 DEBUG [main][header] >> "SOAPAction: ""[\r][\n]"
     [java] 14:25:20,589 DEBUG [main][header] >> "User-Agent: Jakarta Commons-HttpClient/3.0.1[\r][\n]"
     [java] 14:25:20,589 DEBUG [main][header] >> "Host: localhost:8080[\r][\n]"
     [java] 14:25:20,590 DEBUG [main][header] >> "Content-Length: 253[\r][\n]"
     [java] 14:25:20,590 DEBUG [main][header] >> "[\r][\n]"
     [java] 14:25:20,590 DEBUG [main][content] >> "<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:hello="http://webservice_proxy_basic/helloworld"><soapenv:Header/><soapenv:Body><hello:sayHello><toWhom>mvecera</toWhom></hello:sayHello></soapenv:Body></soapenv:Envelope>"
     [java] 14:25:20,593 DEBUG [main][header] << "HTTP/1.1 404 Not Found[\r][\n]"
     [java] 14:25:20,596 DEBUG [main][header] << "Server: Apache-Coyote/1.1[\r][\n]"
     [java] 14:25:20,596 DEBUG [main][header] << "X-Powered-By: Servlet 2.5; JBoss-5.0/JBossWeb-2.1[\r][\n]"
     [java] 14:25:20,597 DEBUG [main][header] << "Content-Type: text/html;charset=utf-8[\r][\n]"
     [java] 14:25:20,597 DEBUG [main][header] << "Content-Length: 1115[\r][\n]"
     [java] 14:25:20,597 DEBUG [main][header] << "Date: Thu, 25 Nov 2010 13:25:20 GMT[\r][\n]"
     [java] **** RESPONSE CODE: 404
     [java] 14:25:20,634 DEBUG [main][content] << "<html><head><title>JBoss Web/2.1.10 - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;}"
     [java] 14:25:20,637 DEBUG [main][content] << " H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {f"
     [java] 14:25:20,637 DEBUG [main][content] << "ont-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 404 - /Quickstart_webservice_proxy_basic/http/Proxy_Basic/Proxy</h1><HR s"
     [java] 14:25:20,638 DEBUG [main][content] << "ize="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u>/Quickstart_webservice_proxy_basic/http/Proxy_Basic/Proxy</u></p><p><b>description</b> <u>The requested resource (/Quickstart_webservice_proxy_basic/http/Proxy_Basic/Proxy) is n"
     [java] 14:25:20,643 DEBUG [main][content] << "ot available.</u></p><HR size="1" noshade="noshade"><h3>JBoss Web/2.1.10</h3></body></html>"
     [java] **** RESPONSE BODY: <html><head><title>JBoss Web/2.1.10 - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 404 - /Quickstart_webservice_proxy_basic/http/Proxy_Basic/Proxy</h1><HR size="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u>/Quickstart_webservice_proxy_basic/http/Proxy_Basic/Proxy</u></p><p><b>description</b> <u>The requested resource (/Quickstart_webservice_proxy_basic/http/Proxy_Basic/Proxy) is not available.</u></p><HR size="1" noshade="noshade"><h3>JBoss Web/2.1.10</h3></body></html>
Comment 5 Martin Vecera 2010-11-25 08:36:43 EST
webservice_wsaddressing, handler chain throws an exception on the server side:
14:33:07,252 WARNING [HandlerChainInvoker] HANDLER_RAISED_RUNTIME_EXCEPTION
java.lang.IllegalStateException: Cannot obtain client id
	at org.jboss.soa.esb.samples.quickstart.webservicewsa.ServerHandler.handleInbound(ServerHandler.java:94)
	at org.jboss.wsf.common.handler.GenericHandler.handleMessage(GenericHandler.java:53)
	at org.apache.cxf.jaxws.handler.HandlerChainInvoker.invokeHandleMessage(HandlerChainInvoker.java:335)
	at org.apache.cxf.jaxws.handler.HandlerChainInvoker.invokeHandlerChain(HandlerChainInvoker.java:253)
	at org.apache.cxf.jaxws.handler.HandlerChainInvoker.invokeProtocolHandlers(HandlerChainInvoker.java:131)
	at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessageInternal(SOAPHandlerInterceptor.java:152)
	at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(SOAPHandlerInterceptor.java:119)
	at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(SOAPHandlerInterceptor.java:69)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243)
	at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:109)
	at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:98)
	at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:406)
	at org.jboss.wsf.stack.cxf.ServletControllerExt.invoke(ServletControllerExt.java:173)
	at org.jboss.wsf.stack.cxf.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:61)
	at org.jboss.soa.esb.actions.soap.SOAPProcessor.process(SOAPProcessor.java:224)
	at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:649)
	at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:603)
	at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:433)
	at org.jboss.soa.esb.listeners.message.MessageAwareListener$TransactionalRunner.run(MessageAwareListener.java:550)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:619)
Comment 6 Jiri Pechanec 2010-11-25 08:55:58 EST
My sever log
14:50:37,412 INFO  [STDOUT] [<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Header>
        <To xmlns="http://www.w3.org/2005/08/addressing">http://localhost:8765/</To>
        <Action xmlns="http://www.w3.org/2005/08/addressing">http://webservice.webservicewsa.quickstart.samples.esb.soa.jboss.org/addItem</Action>
        <ReplyTo xmlns="http://www.w3.org/2005/08/addressing">
    <Address>http://www.w3.org/2005/08/addressing/anonymous</Address>
</ReplyTo>
        <MessageID xmlns="http://www.w3.org/2005/08/addressing">uuid:9946c864-6d32-4f0f-ad97-a444ca7ef870</MessageID>
    </S:Header>
    <S:Body>
        <ns2:addItem xmlns:ns2="http://webservice.webservicewsa.quickstart.samples.esb.soa.jboss.org/">
            <arg0>Ice Cream</arg0>
        </ns2:addItem>
    </S:Body>
</S:Envelope>
].
14:50:37,433 INFO  [JBossDeployerUtil] java.lang.ClassNotFoundException: org.jboss.ws.extensions.addressing.soap.SOAPAddressingBuilderImpl from BaseClassLoader@9c71a93{vfszip:/home/jpechane/releases/51ER4AS/jboss-as/server/postgresql83/deploy/Quickstart_webservice_wsa.esb/}
14:50:37,649 INFO  [ServerHandler] handleRequest
14:50:37,659 WARNING [HandlerChainInvoker] HANDLER_RAISED_RUNTIME_EXCEPTION
java.lang.IllegalStateException: Cannot obtain client id
	at org.jboss.soa.esb.samples.quickstart.webservicewsa.ServerHandler.handleInbound(ServerHandler.java:94)
	at org.jboss.wsf.common.handler.GenericHandler.handleMessage(GenericHandler.java:53)
	at org.apache.cxf.jaxws.handler.HandlerChainInvoker.invokeHandleMessage(HandlerChainInvoker.java:335)
	at org.apache.cxf.jaxws.handler.HandlerChainInvoker.invokeHandlerChain(HandlerChainInvoker.java:253)
	at org.apache.cxf.jaxws.handler.HandlerChainInvoker.invokeProtocolHandlers(HandlerChainInvoker.java:131)
	at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessageInternal(SOAPHandlerInterceptor.java:152)
	at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(SOAPHandlerInterceptor.java:119)
	at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(SOAPHandlerInterceptor.java:69)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243)
	at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:109)
	at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:98)
	at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:406)
	at org.jboss.wsf.stack.cxf.ServletControllerExt.invoke(ServletControllerExt.java:173)
	at org.jboss.wsf.stack.cxf.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:61)
	at org.jboss.soa.esb.actions.soap.SOAPProcessor.process(SOAPProcessor.java:224)
	at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:649)
	at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:603)
	at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:433)
	at org.jboss.soa.esb.listeners.message.MessageAwareListener$TransactionalRunner.run(MessageAwareListener.java:550)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
	at java.lang.Thread.run(Thread.java:636)

Is this line OK?
14:50:37,433 INFO  [JBossDeployerUtil] java.lang.ClassNotFoundException: org.jboss.ws.extensions.addressing.soap.SOAPAddressingBuilderImpl from BaseClassLoader@9c71a93{vfszip:/home/jpechane/releases/51ER4AS/jboss-as/server/postgresql83/deploy/Quickstart_webservice_wsa.esb/}
Comment 7 Jiri Pechanec 2010-11-25 08:57:50 EST
And the error from client side too
runtest:
     [java] Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/xml/messaging/saaj/soap/AttachmentPartImpl
     [java] 	at com.sun.xml.ws.message.AttachmentUnmarshallerImpl.<clinit>(AttachmentUnmarshallerImpl.java:55)
     [java] 	at com.sun.xml.ws.message.stream.StreamMessage.readPayloadAsJAXB(StreamMessage.java:201)
     [java] 	at com.sun.xml.ws.fault.SOAPFaultBuilder.create(SOAPFaultBuilder.java:463)
     [java] 	at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:239)
     [java] 	at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:210)
     [java] 	at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:103)
     [java] 	at $Proxy20.addItem(Unknown Source)
     [java] 	at org.jboss.soa.esb.samples.quickstart.webservicewsa.AddressingPort.addItem(AddressingPort.java:73)
     [java] 	at org.jboss.soa.esb.samples.quickstart.webservicewsa.client.WSAClient.main(WSAClient.java:50)
     [java] Caused by: java.lang.ClassNotFoundException: com.sun.xml.messaging.saaj.soap.AttachmentPartImpl
     [java] 	at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
     [java] 	at java.security.AccessController.doPrivileged(Native Method)
     [java] 	at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
     [java] 	at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
     [java] 	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
     [java] 	at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
     [java] 	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:334)
     [java] 	... 9 more
Comment 8 Kevin Conner 2010-11-30 08:39:18 EST
I am starting with the WS-A quickstart

This line can be ignored although, due to the confusion of the log message, I will have it removed

14:50:37,433 INFO [JBossDeployerUtil] java.lang.ClassNotFoundException: org.jboss.ws.extensions.addressing.soap.SOAPAddressingBuilderImpl from BaseClassLoader@9c71a93{vfszip:/home/jpechane/releases/51ER4AS/jboss-as/server/postgresql83/deploy/Quickstart_webservice_wsa.esb/} 

The client side is likely to be related to SOA-2553 as it is picking up the Sun classes, so will be ignored.

The only question, therefore, is why the CXF integration does not pick up the client id.
Comment 9 Kevin Conner 2010-11-30 08:41:57 EST
For webservice_proxy_basic the QS works as expected.  The 404 would suggest that deployment has failed or not been done, can we have a log file showing the failure?
Comment 10 Kevin Conner 2010-11-30 08:51:08 EST
Link: Added: This issue depends JBESB-3539
Comment 11 Kevin Conner 2010-11-30 09:32:17 EST
Logging has been updated in JBESB-3539, now states

"Detected WS implementation, using CXF"
Comment 12 Kevin Conner 2010-11-30 10:13:13 EST
The WS-A integration works when the workaround for SOA-2553 is applied, as the ReplyTo reference property is not otherwise initialised.

Current state is that
- WS-A works with the SOA-2553 workaround
- webservice_proxy_basic works as expected

Is there something I am missing?
Comment 13 Martin Vecera 2010-12-01 09:12:40 EST
- I don't know what was the problem in webservice_proxy_basic. Now it works for me as well.
- WS-A really works with the workaround
Comment 14 Martin Vecera 2010-12-01 09:26:12 EST
Please note, that those two files in SOA-2553 seem to be the only location of important Ant tasks like WsImport.
Comment 15 Kevin Conner 2010-12-01 13:05:03 EST
Link: Added: This issue duplicates SOA-2553

Note You need to log in before you can comment on or make changes to this bug.