]
Daniel Bevenius commented on JBESB-1950:
----------------------------------------
I think the issue here is the SmooksCache in Wise...
I believe the class 'it.javalinux.wise.ComplexObject' is the class that is causing
the 'java.lang.IllegalArgumentException: argument type mismatch'.
When the quickstart is first executed the classloader for Smooks and for the endpoint will
be the same. When undeploying and later deploying the, SmooksCache will still exist and
'it.javalinux.wise.ComplexObject' will have a different defining classloader then
the defining classloader for the type in the the endpoint method parameter, hence the
IllegalArgumentException.
I was able to work around this by adding a remove method to the SmooksCache class:
public void remove(final String key)
{
cache.remove(key);
}
And then calling this method from destroy in the wise esb SOAPClient:
@Override
public void destroy() throws ActionLifecycleException {
// remove the Smooks instance from Wise's SmooksCache
if ( smooksRequestMapperURL != null)
SmooksCache.getInstance().remove(smooksRequestMapperURL);
if ( smooksResponseMapperURL != null)
SmooksCache.getInstance().remove(smooksResponseMapperURL);
}
I've updated Wise-core.jar locally and this works and all of the test pass. Ive also
run all the quickstart to verify that this does not affect them.
I'll try to get Jim or Stefano to comment on this and if you can add the remove method
or provide a different solution.
"WiseException: Transformation Failed" in
webservice_consumer_wise2 quickstart
------------------------------------------------------------------------------
Key: JBESB-1950
URL:
https://jira.jboss.org/jira/browse/JBESB-1950
Project: JBoss ESB
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Web Services
Affects Versions: 4.4
Environment: Linux Fedora 9, JBoss SOA-P 4.3 IR1, 'all' configuration,
jdk1.5.0_15
Reporter: Pavel Macik
Assignee: Daniel Bevenius
Fix For: 4.4 CP1
Every time, when I try to run QS 'webservice_consumer_wise2', an exception
arises.
I perform following steps before the exception:
1. run JBoss SOA-P 4.3 IR1 server with 'all' configuration ... OK
2. run 'ant deploy' in QS directory ... OK
3. run 'ant runtest' in QS directory ... noticed, that in the Response map there
is 'date=<null>'
4. run 'ant undeploy' in QS directory ... OK
5. run 'ant deploy' in QS directory ... OK
6. run 'ant runtest' in QS directory ... Exception!!!
Here is a server log:
13:58:53,366 INFO [DefaultEndpointRegistry] register:
jboss.ws:context=Quickstart_webservice_consumer_wise2,endpoint=PingWS
13:58:53,379 INFO [JBoss4ESBDeployer] create esb service,
Quickstart_webservice_consumer_wise2.esb
13:58:53,395 INFO [QueueService] Queue[/queue/quickstart_webservice_consumer_wise2_esb]
started, fullSize=200000, pageSize=2000, downCacheSize=2000
13:58:53,424 INFO [QueueService]
Queue[/queue/quickstart_webservice_consumer_wise2_esb_reply] started, fullSize=200000,
pageSize=2000, downCacheSize=2000
13:58:53,430 INFO [QueueService]
Queue[/queue/quickstart_webservice_consumer_wise2_Request_gw] started, fullSize=200000,
pageSize=2000, downCacheSize=2000
13:58:53,495 INFO [SOAPClient] false
13:58:53,495 INFO [SOAPClient] loggingEnabled:false
13:58:53,522 INFO [JDBCDataStore] Generated token
'authToken:5C23B8C0-6EAF-11DD-AB32-AFBD71189930' for user: 'jbossesb/JBoss ESB
User'
13:58:53,613 INFO [QuartzScheduler] Scheduler DefaultQuartzScheduler_$_NON_CLUSTERED
started.
13:58:53,628 INFO [TomcatDeployer] deploy,
ctxPath=/Quickstart_webservice_consumer_wise2,
warUrl=.../tmp/deploy/tmp10888Quickstart_webservice_consumer_wise2.esb-contents/Quickstart_webservice_consumer_wise2-exp.war/
13:58:55,182 INFO [WSDLFilePublisher] WSDL published to:
file:/home/pmacik/work/jboss-soa-p.4.3.0/jboss-as/server/all/data/wsdl/Quickstart_webservice_consumer_wise2.esb/Quickstart_webservice_consumer_wise2.war/PingWSService10889.wsdl
13:59:05,789 INFO [STDOUT]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
13:59:05,879 INFO [STDOUT] Request map is:
{external=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.ExternalObject@1d098b7[internal=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.InternalObject(a)1b63bc9[text=Jimbo,number=1],date=Wed
Mar 07 04:27:00 CET 2007]}
13:59:05,879 INFO [STDOUT]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
13:59:06,259 INFO [STDOUT] parsing WSDL...
13:59:07,382 INFO [STDOUT] generating code...
13:59:07,420 INFO [STDOUT] it/javalinux/wise/ComplexObject.java
13:59:07,431 INFO [STDOUT] it/javalinux/wise/ObjectFactory.java
13:59:07,434 INFO [STDOUT] it/javalinux/wise/PingComplexObject.java
13:59:07,436 INFO [STDOUT] it/javalinux/wise/PingComplexObjectResponse.java
13:59:07,437 INFO [STDOUT] it/javalinux/wise/PingWS.java
13:59:07,439 INFO [STDOUT] it/javalinux/wise/PingWSService.java
13:59:07,447 INFO [STDOUT] it/javalinux/wise/package-info.java
13:59:08,045 INFO [ClassUtil] Loaded 4 classes from 2 URLs through class list file
META-INF/content-handlers.inf. Process took 7ms. Turn on debug logging for more info.
13:59:08,264 INFO [ClassUtil] Not adding class
'org.milyn.javabean.decoders.LocaleAwareDateDecoder' to list. Class does not
implement/extend 'org.milyn.javabean.DataDecoder'.
13:59:08,272 INFO [ClassUtil] Loaded 22 classes from 1 URLs through class list file
META-INF/data-decoders.inf. Process took 23ms. Turn on debug logging for more info.
13:59:09,717 INFO [ClassUtil] Loaded 4 classes from 2 URLs through class list file
META-INF/content-handlers.inf. Process took 2ms. Turn on debug logging for more info.
13:59:10,055 INFO [STDOUT]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
13:59:10,056 INFO [STDOUT] Response Map is:
{InternalObject=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.InternalObject@3be05c[text=Jimbo,number=1],
ExternalObject=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.ExternalObject@1eb536[internal=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.InternalObject(a)3be05c[text=Jimbo,number=1],date=<null>]}
13:59:10,056 INFO [STDOUT]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
13:59:22,866 INFO [STDOUT]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
13:59:22,867 INFO [STDOUT] Request map is:
{external=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.ExternalObject@c4db49[internal=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.InternalObject(a)18d289[text=Jimbo,number=1],date=Wed
Mar 07 04:27:00 CET 2007]}
13:59:22,867 INFO [STDOUT]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
13:59:23,432 INFO [STDOUT]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
13:59:23,432 INFO [STDOUT] Response Map is:
{InternalObject=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.InternalObject@e8e1af[text=Jimbo,number=1],
ExternalObject=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.ExternalObject@16eb92a[internal=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.InternalObject(a)e8e1af[text=Jimbo,number=1],date=<null>]}
13:59:23,432 INFO [STDOUT]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
13:59:45,418 INFO [TomcatDeployer] undeploy,
ctxPath=/Quickstart_webservice_consumer_wise2,
warUrl=.../tmp/deploy/tmp10888Quickstart_webservice_consumer_wise2.esb-contents/Quickstart_webservice_consumer_wise2-exp.war/
13:59:45,555 INFO [JDBCDataStore] Generated token
'authToken:7B269080-6EAF-11DD-AB32-C826D0D982EE' for user: 'jbossesb/JBoss ESB
User'
13:59:45,580 INFO [DeleteBindingFunction] Publisher 'jbossesb' deleted
BindingTemplate with key: 5C253F60-6EAF-11DD-AB32-CB17D4FAEE56
13:59:45,608 INFO [QueueService]
Queue[/queue/quickstart_webservice_consumer_wise2_Request_gw] stopped
13:59:45,609 INFO [QueueService]
Queue[/queue/quickstart_webservice_consumer_wise2_esb_reply] stopped
13:59:45,610 INFO [QueueService] Queue[/queue/quickstart_webservice_consumer_wise2_esb]
stopped
13:59:45,614 INFO [DefaultEndpointRegistry] remove:
jboss.ws:context=Quickstart_webservice_consumer_wise2,endpoint=PingWS
13:59:50,689 INFO [DefaultEndpointRegistry] register:
jboss.ws:context=Quickstart_webservice_consumer_wise2,endpoint=PingWS
13:59:50,695 INFO [JBoss4ESBDeployer] create esb service,
Quickstart_webservice_consumer_wise2.esb
13:59:50,758 INFO [QueueService] Queue[/queue/quickstart_webservice_consumer_wise2_esb]
started, fullSize=200000, pageSize=2000, downCacheSize=2000
13:59:50,770 INFO [QueueService]
Queue[/queue/quickstart_webservice_consumer_wise2_esb_reply] started, fullSize=200000,
pageSize=2000, downCacheSize=2000
13:59:50,776 INFO [QueueService]
Queue[/queue/quickstart_webservice_consumer_wise2_Request_gw] started, fullSize=200000,
pageSize=2000, downCacheSize=2000
13:59:50,904 INFO [SOAPClient] false
13:59:50,912 INFO [SOAPClient] loggingEnabled:false
13:59:50,989 INFO [JDBCDataStore] Generated token
'authToken:7E642F50-6EAF-11DD-AB32-BF7249F6E048' for user: 'jbossesb/JBoss ESB
User'
13:59:51,063 INFO [QuartzScheduler] Scheduler DefaultQuartzScheduler_$_NON_CLUSTERED
started.
13:59:51,072 INFO [TomcatDeployer] deploy,
ctxPath=/Quickstart_webservice_consumer_wise2,
warUrl=.../tmp/deploy/tmp10892Quickstart_webservice_consumer_wise2.esb-contents/Quickstart_webservice_consumer_wise2-exp.war/
13:59:51,288 INFO [WSDLFilePublisher] WSDL published to:
file:/home/pmacik/work/jboss-soa-p.4.3.0/jboss-as/server/all/data/wsdl/Quickstart_webservice_consumer_wise2.esb/Quickstart_webservice_consumer_wise2.war/PingWSService10893.wsdl
13:59:56,963 INFO [STDOUT]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
13:59:56,968 INFO [STDOUT] Request map is:
{external=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.ExternalObject@1ba5fad[internal=org.jboss.soa.esb.samples.quickstart.webservice_consumer_wise2.InternalObject(a)df6513[text=Jimbo,number=1],date=Wed
Mar 07 04:27:00 CET 2007]}
13:59:56,968 INFO [STDOUT]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
13:59:57,020 INFO [STDOUT] parsing WSDL...
13:59:57,066 INFO [STDOUT] generating code...
13:59:57,080 INFO [STDOUT] it/javalinux/wise/ComplexObject.java
13:59:57,082 INFO [STDOUT] it/javalinux/wise/ObjectFactory.java
13:59:57,084 INFO [STDOUT] it/javalinux/wise/PingComplexObject.java
13:59:57,111 INFO [STDOUT] it/javalinux/wise/PingComplexObjectResponse.java
13:59:57,112 INFO [STDOUT] it/javalinux/wise/PingWS.java
13:59:57,113 INFO [STDOUT] it/javalinux/wise/PingWSService.java
13:59:57,114 INFO [STDOUT] it/javalinux/wise/package-info.java
13:59:57,523 ERROR [STDERR] it.javalinux.wise.core.exceptions.WiseRuntimeException: Error
during method invocation!
13:59:57,523 ERROR [STDERR] at
it.javalinux.wise.core.exceptions.WiseRuntimeException.rethrow(WiseRuntimeException.java:44)
13:59:57,523 ERROR [STDERR] at
it.javalinux.wise.core.client.WSMethod.invoke(WSMethod.java:89)
13:59:57,523 ERROR [STDERR] at
it.javalinux.wise.core.client.WSMethod.invoke(WSMethod.java:120)
13:59:57,523 ERROR [STDERR] at
org.jboss.soa.esb.actions.soap.wise.SOAPClient.process(SOAPClient.java:280)
13:59:57,523 ERROR [STDERR] at
org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:316)
13:59:57,523 ERROR [STDERR] at
org.jboss.soa.esb.listeners.message.MessageAwareListener$TransactionalRunner.run(MessageAwareListener.java:530)
13:59:57,523 ERROR [STDERR] at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
13:59:57,523 ERROR [STDERR] at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
13:59:57,523 ERROR [STDERR] at java.lang.Thread.run(Thread.java:595)
13:59:57,524 ERROR [STDERR] Caused by: java.lang.IllegalArgumentException: argument type
mismatch
13:59:57,524 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
13:59:57,524 ERROR [STDERR] at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
13:59:57,524 ERROR [STDERR] at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
13:59:57,524 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:585)
13:59:57,524 ERROR [STDERR] at
it.javalinux.wise.core.client.WSMethod.invoke(WSMethod.java:75)
13:59:57,524 ERROR [STDERR] ... 7 more
13:59:57,524 WARN [ActionProcessingPipeline] Unexpected exception caught while
processing the action pipeline: header: [ To: JMSEpr [ PortReference < <wsa:Address
jms://127.0.0.1:1099/queue/quickstart_webservice_consumer_wise2_esb/>,
<wsa:ReferenceProperties jbossesb:java.naming.factory.initial :
org.jnp.interfaces.NamingContextFactory/>, <wsa:ReferenceProperties
jbossesb:java.naming.provider.url : localhost/>, <wsa:ReferenceProperties
jbossesb:java.naming.factory.url.pkgs : org.jnp.interfaces/>,
<wsa:ReferenceProperties jbossesb:destination-type : queue/>,
<wsa:ReferenceProperties jbossesb:specification-version : 1.1/>,
<wsa:ReferenceProperties jbossesb:connection-factory : ConnectionFactory/>,
<wsa:ReferenceProperties jbossesb:persistent : true/>, <wsa:ReferenceProperties
jbossesb:acknowledge-mode : AUTO_ACKNOWLEDGE/>, <wsa:ReferenceProperties
jbossesb:transacted : false/>, <wsa:ReferenceProperties jbossesb:type :
urn:jboss/esb/epr/type/jms/> > ] MessageID: 4b7cd1fb-381a-43fd-bca2-ad2a7bf137d5
RelatesTo: jms:correlationID#4b7cd1fb-381a-43fd-bca2-ad2a7bf137d5 ]
org.jboss.soa.esb.actions.ActionProcessingException: Could not call
methodpingComplexObject
at org.jboss.soa.esb.actions.soap.wise.SOAPClient.process(SOAPClient.java:282)
at
org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:316)
at
org.jboss.soa.esb.listeners.message.MessageAwareListener$TransactionalRunner.run(MessageAwareListener.java:530)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
Caused by: it.javalinux.wise.core.exceptions.WiseException: Transformation Failed
at it.javalinux.wise.core.client.WSMethod.invoke(WSMethod.java:123)
at org.jboss.soa.esb.actions.soap.wise.SOAPClient.process(SOAPClient.java:280)
... 5 more
13:59:57,542 WARN [ActionProcessingPipeline] No fault address defined for fault message!
To: JMSEpr [ PortReference < <wsa:Address
jms://127.0.0.1:1099/queue/quickstart_webservice_consumer_wise2_esb/>,
<wsa:ReferenceProperties jbossesb:java.naming.factory.initial :
org.jnp.interfaces.NamingContextFactory/>, <wsa:ReferenceProperties
jbossesb:java.naming.provider.url : localhost/>, <wsa:ReferenceProperties
jbossesb:java.naming.factory.url.pkgs : org.jnp.interfaces/>,
<wsa:ReferenceProperties jbossesb:destination-type : queue/>,
<wsa:ReferenceProperties jbossesb:specification-version : 1.1/>,
<wsa:ReferenceProperties jbossesb:connection-factory : ConnectionFactory/>,
<wsa:ReferenceProperties jbossesb:persistent : true/>, <wsa:ReferenceProperties
jbossesb:acknowledge-mode : AUTO_ACKNOWLEDGE/>, <wsa:ReferenceProperties
jbossesb:transacted : false/>, <wsa:ReferenceProperties jbossesb:type :
urn:jboss/esb/epr/type/jms/> > ] MessageID: 4b7cd1fb-381a-43fd-bca2-ad2a7bf137d5
RelatesTo: jms:correlationID#4b7cd1fb-381a-43fd-bca2-ad2a7bf137d5
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: