-
Bug
-
Resolution: Done
-
Major
-
2.1.4.Final
-
None
I have been running a test consuming a ESB Service that uses SOAPProxy from a BPEL process. It appears that the soapAction is not being set correctly, even though it is in the WSDL, Worse, it appears that it is being
set to "", which causes SOAPProxy to barf.
When I turn on JBossWS message tracing. I see:
])}
2011-03-24 14:08:33,543 TRACE
[org.jboss.classloader.spi.base.BaseClassLoader] (ODEServer-4)
BaseClassLoader@b600af
unlock Thread[ODEServer-4,5,jboss] holding=1
2011-03-24 14:08:33,543 TRACE
[org.jboss.detailed.classloader.ClassLoaderManager] (ODEServer-4)
unregisterLoaderThread,
classloader=BaseClassLoader@b600af
thread=Thread[ODEServer-4,5,jboss] rescheduleTasks=true
2011-03-24 14:08:33,544 DEBUG
[org.jboss.remoting.transport.http.HTTPClientInvoker] (ODEServer-4)
org.jboss.remoting.transport.http.HTTPClientInvoker@2daa2e setting
unmarshalNullStream to true
2011-03-24 14:08:33,544 DEBUG
[org.jboss.remoting.MicroRemoteClientInvoker] (ODEServer-4)
org.jboss.remoting.transport.http.HTTPClientInvoker@2daa2e connecting
2011-03-24 14:08:33,544 DEBUG
[org.jboss.remoting.MicroRemoteClientInvoker] (ODEServer-4)
org.jboss.remoting.transport.http.HTTPClientInvoker@2daa2e connected
2011-03-24 14:08:33,544 DEBUG [org.jboss.remoting.Client]
(ODEServer-4) Client[3264658:5c4o05-qx48po-glo081tb-1-glo47jrm-uk]
connected to InvokerLocator
http://127.0.0.1:8080/PolicyQuoteMonitoringProxies/http/DrivingRecordService
2011-03-24 14:08:33,545 DEBUG [org.jboss.remoting.Client]
(ODEServer-4) Client[3264658:5c4o05-qx48po-glo081tb-1-glo47jrm-uk] is
connected
2011-03-24 14:08:33,545 DEBUG
[org.jboss.ws.core.client.HTTPRemotingConnection] (ODEServer-4)
Remoting metadata: {NoThrowOnError=true, HEADER={SOAPAction="",
Content-Type=text/xml; charset=UTF-8}}
2011-03-24 14:08:33,545 TRACE [org.jboss.ws.core.CommonMessageContext]
(ODEServer-4) get(org.jboss.ws.DOMContentCanonicalNormalization): null
2011-03-24 14:08:33,545 TRACE
[org.jboss.ws.core.soap.SOAPContentElement] (ODEServer-4)
getChildNodes
2011-03-24 14:08:33,545 TRACE
[org.jboss.ws.core.soap.SOAPContentElement] (ODEServer-4)
getChildNodes
2011-03-24 14:08:33,545 TRACE [org.jboss.ws.core.MessageTrace]
(ODEServer-4) Outgoing Request Message
<env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'>
<env:Header/>
<env:Body>
<drivingRecordRequest xmlns='http://dmv.com/drivingRecord'>
<drv:name xmlns:drv='http://dmv.com/drivingRecord'>Bill
Smith</drv:name>
<drv:ssn xmlns:drv='http://dmv.com/drivingRecord'>712345678</drv:ssn>
<drv:dlNumber
xmlns:drv='http://dmv.com/drivingRecord'>987654321</drv:dlNumber>
<drv:age xmlns:drv='http://dmv.com/drivingRecord'>30</drv:age>
</drivingRecordRequest>
</env:Body>
</env:Envelope>
2011-03-24 14:08:33,545 TRACE
[org.jboss.remoting.MicroRemoteClientInvoker] (ODEServer-4)
org.jboss.remoting.transport.http.HTTPClientInvoker@2daa2e(1) invoking
InvocationRequest[1ffbc5b, JBOSSWS,
OnewayInvocation[org.jboss.ws.core.soap.SOAPMessageImpl@a71c36]]
2011-03-24 14:08:33,556 TRACE
[org.jboss.remoting.transport.bisocket.BisocketServerInvoker]
(Timer-2) checking connections
2011-03-24 14:08:33,569 TRACE
[org.jboss.classloader.spi.base.BaseClassLoader] (ODEServer-4)
BaseClassLoader@b600af
loadClass java.net.HttpURLConnection resolve=false
2011-03-24 14:08:33,569 TRACE
[org.jboss.classloader.spi.base.BaseClassLoader] (ODEServer-4)
BaseClassLoader@b600af
aquireLockFairly Thread[ODEServer-4,5,jboss]
2011-03-24 14:08:33,569 TRACE
[org.jboss.classloader.spi.base.BaseClassLoader] (ODEServer-4)
BaseClassLoader@b600af
aquiredLock Thread[ODEServer-4,5,jboss] holding=1
2011-03-24 14:08:33,569 TRACE
[org.jboss.detailed.classloader.ClassLoaderManager] (ODEServer-4)
registerLoaderThread,
classloader=BaseClassLoader@b600af
thread=Thread[ODEServer-4,5,jboss] previousThread=null
2011-03-24 14:08:33,569 TRACE
[org.jboss.classloader.spi.base.BaseClassLoader] (ODEServer-4)
BaseClassLoader@b600af
load from domain java.net.HttpURLConnection
domain=ClassLoaderDomain@323274
2011-03-24 14:08:33,569 TRACE
[org.jboss.classloader.spi.base.BaseClassLoaderDomain] (ODEServer-4)
ClassLoaderDomain@323274{DefaultDomain}
findLoader
java/net/HttpURLConnection.class
classLoader=BaseClassLoader@b600af
allExports=false findInParent=true
2011-03-24 14:08:33,569 TRACE
[org.jboss.classloader.spi.ClassLoaderDomain] (ODEServer-4)
ClassLoaderDomain@323274
java/net/HttpURLConnection.class matches parent
beforeFilter=<EVERYTHING>
2011-03-24 14:08:33,569 TRACE
[org.jboss.classloader.spi.ClassLoaderDomain] (ODEServer-4)
ClassLoaderDomain@323274{DefaultDomain}
load from parent
java/net/HttpURLConnection.class
parent=org.jboss.bootstrap.NoAnnotationURLClassLoader@1507fb2
2011-03-24 14:08:33,569 TRACE
[org.jboss.classloader.plugins.loader.ClassLoaderToLoaderAdapter]
(ODEServer-4) Resource java/net/HttpURLConnection.class found in
org.jboss.bootstrap.NoAnnotationURLClassLoader@1507fb2
2011-03-24 14:08:33,569 TRACE
[org.jboss.detailed.classloader.ClassLoaderManager] (ODEServer-4)
ScheduleTask
task=ClassLoadingTask@adbf36{className=java.net.HttpURLConnection
requestingThread=Thread[ODEServer-4,5,jboss] requestingClassLoader:
BaseClassLoader@b600af
threadTaskCount: 0 state: null}
loader=org.jboss.bootstrap.NoAnnotationURLClassLoader@1507fb2
reschedule=false
2011-03-24 14:08:33,569 TRACE
[org.jboss.detailed.classloader.ClassLoaderManager] (ODEServer-4)
scheduleTask(1), created subtask:
2011-03-24 14:08:33,569 TRACE
[org.jboss.detailed.classloader.ClassLoaderManager] (ODEServer-4) Next
task thread=Thread[ODEServer-4,5,jboss]
task=ClassLoadingTask@adbf36{className=java.net.HttpURLConnection
requestingThread=Thread[ODEServer-4,5,jboss] requestingClassLoader:
BaseClassLoader@b600af{vfsfile:/Users/jdelong/SOAWorkshop/software/jboss-soa-p-5/jboss-as/server/default/conf/jboss-service.xml}
threadTaskCount: 1 state: null}
2011-03-24 14:08:33,569 TRACE
[org.jboss.detailed.classloader.ClassLoaderManager] (ODEServer-4)
Continue nextTask(1),
task=ClassLoadingTask@adbf36{className=java.net.HttpURLConnection
requestingThread=Thread[ODEServer-4,5,jboss] requestingClassLoader:
BaseClassLoader@b600af{vfsfile:/Users/jdelong/SOAWorkshop/software/jboss-soa-p-5/jboss-as/server/default/conf/jboss-service.xml}
threadTaskCount: 1 state: null}
2011-03-24 14:08:33,569 TRACE
[org.jboss.detailed.classloader.ClassLoaderManager] (ODEServer-4)
Begin nextTask(0),
loadTask=ClassLoadingTask@adbf36{className=java.net.HttpURLConnection
requestingThread=Thread[ODEServer-4,5,jboss] requestingClassLoader:
BaseClassLoader@b600af{vfsfile:/Users/jdelong/SOAWorkshop/software/jboss-soa-p-5/jboss-as/server/default/conf/jboss-service.xml}
threadTaskCount: 1 state: null}
2011-03-24 14:08:33,569 TRACE
[org.jboss.detailed.classloader.ClassLoaderManager] (ODEServer-4)
Running threadTask={thread=Thread[ODEServer-4,5,jboss]loader=org.jboss.bootstrap.NoAnnotationURLClassLoader@1507fb2requestingThread=Thread[ODEServer-4,5,jboss] releaseInNextTask=false}
2011-03-24 14:08:33,569 TRACE
[org.jboss.detailed.classloader.ClassLoadingTask] (ODEServer-4)
setLoadedClass, theClass=class java.net.HttpURLConnection
2011-03-24 14:08:33,569 TRACE
[org.jboss.detailed.classloader.ClassLoaderManager] (ODEServer-4)
Notifying task of thread completion,
loadTask:ClassLoadingTask@adbf36{className=java.net.HttpURLConnection
requestingThread=Thread[ODEServer-4,5,jboss] requestingClassLoader:
BaseClassLoader@b600af
loadedClass=class java.net.HttpURLConnection
{cl=null codeSource=null}threadTaskCount: 0 state: null}
2011-03-24 14:08:33,569 TRACE
[org.jboss.detailed.classloader.ClassLoaderManager] (ODEServer-4) End
nextTask(0),
loadTask=ClassLoadingTask@adbf36{className=java.net.HttpURLConnection
requestingThread=Thread[ODEServer-4,5,jboss] requestingClassLoader:
BaseClassLoader@b600af{vfsfile:/Users/jdelong/SOAWorkshop/software/jboss-soa-p-5/jboss-as/server/default/conf/jboss-service.xml}
loadedClass=class java.net.HttpURLConnection{cl=null codeSource=null}
threadTaskCount: 0 state: FINISHED}
2011-03-24 14:08:33,569 TRACE
[org.jboss.classloader.spi.base.BaseClassLoader] (ODEServer-4)
BaseClassLoader@b600af
got class from domain class java.net.HttpURLConnection
{cl=null codeSource=null}2011-03-24 14:08:33,569 TRACE
[org.jboss.classloader.spi.base.BaseClassLoader] (ODEServer-4)
BaseClassLoader@b600af
unlock Thread[ODEServer-4,5,jboss] holding=1
2011-03-24 14:08:33,569 TRACE
[org.jboss.detailed.classloader.ClassLoaderManager] (ODEServer-4)
unregisterLoaderThread,
classloader=BaseClassLoader@b600af
thread=Thread[ODEServer-4,5,jboss] rescheduleTasks=true
2011-03-24 14:08:33,570 DEBUG
[org.jboss.remoting.transport.http.HTTPClientInvoker] (ODEServer-4)
Setting request header with SOAPAction : ""
2011-03-24 14:08:33,570 DEBUG
In particular the "" is problematic. I set the soapAction in an ESB
message property in a custom action prior to the SOAPProxy action, but
it has no effect since the soapAction in the incoming request is "".
I will attach Eclipse projects that demonstrate the problem.
Jeff