Bug 780226 (SOA-2613) - Subset of web-service related quickstarts does not work with CXF part II.
Summary: Subset of web-service related quickstarts does not work with CXF part II.
Keywords:
Status: CLOSED DUPLICATE of bug 780178
Alias: SOA-2613
Product: JBoss Enterprise SOA Platform 5
Classification: JBoss
Component: JBossESB, Examples
Version: 5.1.0.ER3
Hardware: Unspecified
OS: Unspecified
urgent
urgent
Target Milestone: ---
: 5.1.0 GA
Assignee: Kevin Conner
QA Contact:
URL: http://jira.jboss.org/jira/browse/SOA...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-11-25 13:20 UTC by Martin Vecera
Modified: 2010-12-01 18:05 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-12-01 18:05:25 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 780074 0 urgent CLOSED Subset of web-service related quickstarts does not work with CXF 2021-02-22 00:41:40 UTC
Red Hat Issue Tracker SOA-2613 0 None None None Never

Internal Links: 780074

Description Martin Vecera 2010-11-25 13:20:23 UTC
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 13:20:24 UTC
Link: Added: This issue Cloned from SOA-2440


Comment 2 Martin Vecera 2010-11-25 13:22:49 UTC
Link: Removed: This issue Cloned from SOA-2440 


Comment 3 Martin Vecera 2010-11-25 13:23:13 UTC
Link: Added: This issue is related to SOA-2440


Comment 4 Martin Vecera 2010-11-25 13:29:52 UTC
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 13:36:43 UTC
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 13:55:58 UTC
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 13:57:50 UTC
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 13:39:18 UTC
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 13:41:57 UTC
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 13:51:08 UTC
Link: Added: This issue depends JBESB-3539


Comment 11 Kevin Conner 2010-11-30 14:32:17 UTC
Logging has been updated in JBESB-3539, now states

"Detected WS implementation, using CXF"

Comment 12 Kevin Conner 2010-11-30 15:13:13 UTC
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 14:12:40 UTC
- 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 14:26:12 UTC
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 18:05:03 UTC
Link: Added: This issue duplicates SOA-2553



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