| Summary: | Missing BasicInvocationContext class | ||
|---|---|---|---|
| Product: | [JBoss] JBoss Enterprise SOA Platform 4 | Reporter: | Martin Vecera <mvecera> |
| Component: | JBossWS | Assignee: | trev <tkirby> |
| Status: | CLOSED NEXTRELEASE | QA Contact: | |
| Severity: | urgent | Docs Contact: | |
| Priority: | urgent | ||
| Version: | 4.2 IR4 | CC: | tom.fennelly |
| Target Milestone: | --- | ||
| Target Release: | 4.2 IR6 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| URL: | http://jira.jboss.org/jira/browse/SOA-102 | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: |
soa-standalone
|
|
| Last Closed: | 2007-11-22 10:59:06 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Description
Martin Vecera
2007-11-06 15:12:52 UTC
Link: Added: This issue related SOA-84 Link: Added: This issue is duplicated by SOA-119 Usage of this class is an error, it is not part of jbossws-spi.jar Do do you have a stack trace that shows us the client of that API? from #jbosssoa <jpechane_wfh> tkirby ESB is WS client in this case <mvecera> tkirby: I don't have it, but I should be able to reproduce it... I've asked mcevera to add the details to this jira, but it may be quicker to ask your questions directly on #jbosssoa Server side:
16:28:38,606 WARN [ServiceController] Problem starting service jboss.esb:deployment=Performance6.esb
java.lang.NoClassDefFoundError: org/jboss/wsf/spi/invocation/BasicInvocationContext
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:242)
at org.jboss.soa.esb.util.ClassUtil.forName(ClassUtil.java:65)
at org.jboss.soa.esb.listeners.config.ServicePublisher.getConractPublisher(ServicePublisher.java:151)
at org.jboss.soa.esb.listeners.config.ServicePublisher.addServicePublishers(ServicePublisher.java:107)
at org.jboss.soa.esb.listeners.config.Configuration.create(Configuration.java:120)
at org.jboss.soa.esb.listeners.config.JBoss4ESBDeployment.startService(JBoss4ESBDeployment.java:82)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:417)
at org.jboss.system.ServiceController.start(ServiceController.java:435)
at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at $Proxy4.start(Unknown Source)
at org.jboss.deployment.SARDeployer.start(SARDeployer.java:302)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1015)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
at org.jboss.deployment.MainDeployer.redeploy(MainDeployer.java:566)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at sun.reflect.GeneratedMethodAccessor146.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.jmx.connector.invoker.InvokerAdaptorService.invoke(InvokerAdaptorService.java:266)
at sun.reflect.GeneratedMethodAccessor103.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.jmx.connector.invoker.SerializableInterceptor.invoke(SerializableInterceptor.java:74)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.invocation.jrmp.server.JRMPProxyFactory.invoke(JRMPProxyFactory.java:179)
at sun.reflect.GeneratedMethodAccessor102.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.invocation.jrmp.server.JRMPInvoker$MBeanServerAction.invoke(JRMPInvoker.java:818)
at org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:419)
at sun.reflect.GeneratedMethodAccessor144.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
at java.lang.Thread.run(Thread.java:595)
Client side:
org.jboss.soa.esb.qa.framework.TestRunException: Incomplete Deployment listing:
--- MBeans waiting for other MBeans ---
ObjectName: jboss.esb:deployment=Performance6.esb
State: FAILED
Reason: java.lang.NoClassDefFoundError: org/jboss/wsf/spi/invocation/BasicInvocationContext
I Depend On:
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_esb
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_esb_reply
jboss.esb:deployment=jbossesb.esb
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_gw
jboss.esb:deployment=soap.esb
--- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM ---
ObjectName: jboss.esb:deployment=Performance6.esb
State: FAILED
Reason: java.lang.NoClassDefFoundError: org/jboss/wsf/spi/invocation/BasicInvocationContext
I Depend On:
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_esb
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_esb_reply
jboss.esb:deployment=jbossesb.esb
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_gw
jboss.esb:deployment=soap.esb
at org.jboss.soa.esb.qa.framework.ESBTestServices.deployESBApplication(ESBTestServices.java:72)
at org.jboss.soa.esb.qa.framework.ESBPerformanceTestServices.deployESBApplication(ESBPerformanceTestServices.java:151)
at org.jboss.soa.esb.qa.framework.ESBPerformanceTestServices.executePerformanceTest(ESBPerformanceTestServices.java:290)
at org.jboss.soa.esb.qa.tests.performance.performance6.Performance6JMSTest.testWSConsumerJMSNoReturn(Performance6JMSTest.java:46)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.testng.internal.MethodHelper.invokeMethod(MethodHelper.java:604)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:470)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:564)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:830)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:109)
at org.testng.TestRunner.runWorkers(TestRunner.java:678)
at org.testng.TestRunner.privateRun(TestRunner.java:624)
at org.testng.TestRunner.run(TestRunner.java:495)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:300)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:295)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:275)
at org.testng.SuiteRunner.run(SuiteRunner.java:190)
at org.testng.TestNG.createAndRunSuiteRunners(TestNG.java:792)
at org.testng.TestNG.runSuitesLocally(TestNG.java:765)
at org.testng.TestNG.run(TestNG.java:699)
at org.testng.TestNG.privateMain(TestNG.java:824)
at org.testng.TestNG.main(TestNG.java:802)
Caused by: Incomplete Deployment listing:
--- MBeans waiting for other MBeans ---
ObjectName: jboss.esb:deployment=Performance6.esb
State: FAILED
Reason: java.lang.NoClassDefFoundError: org/jboss/wsf/spi/invocation/BasicInvocationContext
I Depend On:
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_esb
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_esb_reply
jboss.esb:deployment=jbossesb.esb
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_gw
jboss.esb:deployment=soap.esb
--- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM ---
ObjectName: jboss.esb:deployment=Performance6.esb
State: FAILED
Reason: java.lang.NoClassDefFoundError: org/jboss/wsf/spi/invocation/BasicInvocationContext
I Depend On:
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_esb
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_esb_reply
jboss.esb:deployment=jbossesb.esb
jboss.esb.quickstart.destination:service=Queue,name=quickstart_performance6_gw
jboss.esb:deployment=soap.esb
at org.jboss.deployment.MainDeployer.checkIncompleteDeployments(MainDeployer.java:1385)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:785)
at org.jboss.deployment.MainDeployer.redeploy(MainDeployer.java:566)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at sun.reflect.GeneratedMethodAccessor146.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.jmx.connector.invoker.InvokerAdaptorService.invoke(InvokerAdaptorService.java:266)
at sun.reflect.GeneratedMethodAccessor103.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.jmx.connector.invoker.SerializableInterceptor.invoke(SerializableInterceptor.java:74)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.invocation.jrmp.server.JRMPProxyFactory.invoke(JRMPProxyFactory.java:179)
at sun.reflect.GeneratedMethodAccessor102.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.invocation.jrmp.server.JRMPInvoker$MBeanServerAction.invoke(JRMPInvoker.java:818)
at org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:419)
at sun.reflect.GeneratedMethodAccessor144.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
at java.lang.Thread.run(Thread.java:595)
Thomas.... org.jboss.wsf.spi.invocation.BasicInvocationContext is used by the ESB's org.jboss.soa.esb.actions.soap.SOAPProcessor class. It uses it as the InvocationContext instance supplied in calls to org.jboss.wsf.spi.invocation.RequestHandler.handleRequest(...) i.e. for invoking the webservice endpoint. Which InvocationContext impl should we be using? If BasicInvocationContext is not part of the public API, does that imply that RequestHandler is also not part of the public API (since they're in the same package of the same jar jbossws-spi.jar)? If so, what should we be using to invoke webservice endpoints? We were pretty sure we were using the correct part of the API for this :-( Trevor/Martin... What exactly is your env i.e. ESB Server or AS... version of JBossWS etc? soa-standalone-4.2.0.IR4 ESB server: [Server] JBoss (MX MicroKernel) [4.2.1.GA (build: SVNTag=JBoss_4_2_1_GA date=200707131605)] Started in 38s:67ms JBossWS, (soa-standalone-4.2.0.IR4/server/default/deploy/jbossws.sar/META-INF/MANIFEST.MF): Manifest-Version: 1.2 Ant-Version: Apache Ant 1.7.0 Created-By: 1.5.0_12-b04 (Sun Microsystems Inc.) Specification-Title: JBossWS Specification-Version: jbossws-2.0 Specification-Vendor: JBoss (http://www.jboss.org) Implementation-Title: JBoss Web Services - Native Implementation-URL: http://www.jboss.org/products/jbossws Implementation-Version: jbossws-native-2.0.1.SP2 (build=200711011842) Implementation-Vendor: JBoss Inc. Implementation-Vendor-Id: http://www.jboss.org Class-Path: jbossws-spi.jar jbossws-common.jar jbossws-framework.jar jboss-jaxrpc.jar jboss-jaxws.jar jboss-saaj.jar activation.jar commons-logging.jar concurrent.jar javassist.jar jaxb-api.jar jaxb-impl.jar mail.jar jboss-remoting.jar jboss-xml-binding.jar policy.jar stax-api.jar wsdl4j.jar JBossWS SPI, (soa-standalone-4.2.0.IR4/client/jbossws-spi.jar/MANIFEST.MF): Manifest-Version: 1.2 Ant-Version: Apache Ant 1.6.5 Created-By: 1.5.0_12-b04 (Sun Microsystems Inc.) Specification-Title: JBossWS Specification-Version: jbossws-2.0 Specification-Vendor: JBoss (http://www.jboss.org) Implementation-Title: JBoss Web Services - SPI Implementation-URL: http://www.jboss.org/products/jbossws Implementation-Version: jbossws-1.0.0.GA (build=200708171551) Implementation-Vendor: JBoss Inc. Implementation-Vendor-Id: http://www.jboss.org Class-Path: getopt.jar <tkirby> tfennelly: I was told it had to be 2.0.1CP2, that is also the version in the EAP based server <marklittle> JBossWS 2.0.1CP2 is the version we should be using in the platform. <marklittle> +1 <marklittle> That's been the case for at least the past 2 months. <tfennelly> lol <tfennelly> ok <marklittle> Even though CP2 wasn't officially available until about 4 weeks ago. <tfennelly> well we need to fix the ESB to work with then I suppose <tfennelly> since 2.0.0 and 2.0.1 are not compatible <tfennelly> sorry <tfennelly> brb <marklittle> I thought Kev had pulled 2.0.1SP2 (publicly available equivalent)? <marklittle> kconner: care to comment? <kconner> Sorry, let me catch up <tkirby> tfennelly:mvecera has added a comment to the jira abot versions <kconner> marklittle, tfennelly, tkirby: No, I haven't pulled 2.0.1SP2 into the ESB project yet. The move with WS only happened very recently, not in time for 4.2.1GA <kconner> If there is a compatibility issue with this then we need to look at bringing it in though <kconner> marklittle: I thought 2.0.0 and 2.0.1 were supposed to be compatible at the SPI level though, is this not the case? <tfennelly> well, not as far as we're using the SPI <tfennelly> apparently not <tfennelly> so suppose the question is.. what is in/out of the SPI <kconner> tfennelly: Okay, so this is something else that has changed then <tfennelly> ?? <tfennelly> right <kconner> I thought the SPI jar was everything public :) <kconner> The implementation is supposed to be somewhere else <tfennelly> well the stuff we're using is in the SPI <kconner> marklittle: any comments on compatibility? <tfennelly> as in jbossws-spi.jar <tfennelly> Thomas was saying that we shouldn't be using one of those classes though <kconner> tfennelly That's the public API AFAICT, I do not think it should be changing in an incompatible way <tfennelly> Id unno... we should wait and hear Thomas' angle on it I suppose <tfennelly> (I dunno) <marklittle> kconner: no, comments on which version of JBossWS ESB was last built against ;-) <tfennelly> it was last built/tested against 2.0.0GA <tfennelly> we tried 2.0.1.x some time back, but ran into compatibility issues... it was bounced back to the JBossWS team after that <marklittle> yes, that's why CP2 came out ;-) <kconner> Sure, I thought SP2 was supposed to have fixed all that <tfennelly> right <marklittle> But I thought SP2 was last used because I remember Kev asking me how he could get access to CP2. <tfennelly> I heard nothing about that since then <kconner> marklittle: that was just before the 4.2.1GA release and was concerned with including it in the release for the CP <kconner> The aim was to help the platform guyd <marklittle> kconner: ok <marklittle> CP2 should have put back the old interfaces that 2.0.1 broke from 2.0.0. <marklittle> If that is not the case then there will be a CP3 <kconner> marklittle: The main reason for making that change was to remove the JAXB processing we have to do in the project <kconner> I sat down with Trev and fixed the SOA branch so that it was no longer necessary <kconner> tfennelly: What do you know about 2.0.1SP2? Have you had a chance to look at it? <tfennelly> kconner: sorry, flicked away there for a min... <tfennelly> eh... not a lot apart from what I saw in that stack tract i.e. that one of the classes in the spi jar has been removed <tfennelly> and we were using that class <tfennelly> Thomas says we shouldn't have been using it <kconner> lol, which begs the question 'why was it in the SPI then?' :) <tfennelly> you could ask that question I suppose <tfennelly> :-) <tfennelly> probably easiest if we just sort it out I guess <tfennelly> I don't suppose it'll be all that difficult (assuming not too much else has changed) <marklittle> If it was in 2.0.0 then it HAS TO BE IN 2.0.1CP2 or there will be a CP3. <tfennelly> we do need a clearer picture on what is in/out of the SPI <marklittle> If it has been removed and Thomas confirms this, then let me know and I will discuss it with him further. <tfennelly> i.e. what we should be using <kconner> marklittle: we seem to have two issues here, one is compatibility (which is broken) <tfennelly> and shouldn't (more to the point) <kconner> the second is just getting this working <kconner> We should be moving to SP2 in any case, to be more inline with the platform, so now seems to be a good point to try it out <kconner> tfennelly: What are your feelings over this? You know the integration better than anyone <tfennelly> kconner: let's go with it <tfennelly> 2.0.1.CP2 that is <kconner> tfennelly: We need to take SP2 into the project but they should be the same <kconner> tfennelly: Good luck ;) <tfennelly> OK. <tfennelly> OK... I just don't wanna integrate SP2 to then find CP2 is the "same", but we get screwed by some packaging issue <kconner> tfennelly: The packaging will have to be handled in the SOA Platform, I can work with Trev to fix any issues that may come up As of jbossws-spi-1.0.0, you should be using org.jboss.wsf.spi.invocation.InvocationContext Thomas, unless this was previously documented as a non-public API then it cannot be removed in the 2.0.x codebase. You can support it elsewhere, but you need to be backwardly compatible. Thanks. jbossws-2.0.1 was the first release that used jbossws-spi-1.0.0.GA as a standalone project. Before that the SPI was still work in progress and an integral part of the jbossws core code base. I understand your backward compatibility concerns and yes, everything in jbossws-spi-1.0.0.GA is public and can be used (from that release onward) I hope we can resolve possible API/SPI incompatibility issues between 2.0.0 and 2.0.1 in an unbureaucratic way and jbossws-spi-1.0.0.GA can be our baseline to move forward Alternatively, we would need to create a SP branch for jbossws-spi-1.0.0 where we restore the API that the ESB is using. For many a reason I would recommend the ESB uses the 1.0.0.GA SPI/API Link: Added: This issue depends JBESB-1336 Thomas, this isn't bureaucratic: we have a message around the platforms that there will be no backward compatibility issues within minor version numbers of the individual projects. Unless you made this change because of a bug, then this has to be changed as well. If something was available in JBossWS 2.0.0GA it needs to continue to be available in JBossWS 2.0.1GA and CPs. We've been over this before and if the other projects can work within this approach I'd expect the same from your project. What is the problem with adding jbossws-spi-1.0.0GA and maintaining backward compatibility with JBossWS 2.0.0GA? JBoss Forum Reference: Added: http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4104564#4104564 The RequestHandler implementation that's being used with native carries an implementation error: It does cast the InvocationContext to a concrete implementation instead of relying on the interface. This forces clients like the ESB to work with that particular implementation, ServletRequestHandler in this case. Here's the code:
public class RequestHandlerImpl implements RequestHandler
{
[...]
public void handleWSDLRequest(Endpoint endpoint, OutputStream outputStream, InvocationContext context)
{
[...]
ServletRequestContext reqContext = (ServletRequestContext)context;
HttpServletRequest req = reqContext.getHttpServletRequest();
[...]
Link: Added: This issue depends JBWS-1909 JBWS-1909 contains a workaround description that's SPI compliant Please confirm updates when creating the release. Verified with IR6. Link: Removed: This issue related SOA-84 |