Return-Path: Delivered-To: apmail-incubator-cxf-dev-archive@locus.apache.org Received: (qmail 98249 invoked from network); 20 Dec 2006 10:15:06 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 20 Dec 2006 10:15:06 -0000 Received: (qmail 59722 invoked by uid 500); 20 Dec 2006 10:15:13 -0000 Delivered-To: apmail-incubator-cxf-dev-archive@incubator.apache.org Received: (qmail 59689 invoked by uid 500); 20 Dec 2006 10:15:13 -0000 Mailing-List: contact cxf-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: cxf-dev@incubator.apache.org Delivered-To: mailing list cxf-dev@incubator.apache.org Received: (qmail 59670 invoked by uid 99); 20 Dec 2006 10:15:13 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 20 Dec 2006 02:15:13 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: domain of jliu@iona.com designates 65.223.216.181 as permitted sender) Received: from [65.223.216.181] (HELO amereast-smg1.iona.com) (65.223.216.181) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 20 Dec 2006 02:15:02 -0800 Received: from amer-ems1.IONAGLOBAL.COM ([10.65.6.25]) by amereast-smg1.iona.com (Switch-3.1.7/Switch-3.1.7) with ESMTP id kBKAELgF020218 for ; Wed, 20 Dec 2006 05:14:21 -0500 (EST) X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Subject: RE: cxf Cruisecontrol Build Result: cxf Build Failed Date: Wed, 20 Dec 2006 05:14:36 -0500 Message-ID: <9A4696F35B459043970EE4A85A317390066811@amer-ems1.IONAGLOBAL.COM> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: cxf Cruisecontrol Build Result: cxf Build Failed Thread-Index: AcckFh4B5vYCWJBzQD+5SPRsX5g7OgACOi8g From: "Liu, Jervis" To: X-Virus-Checked: Checked by ClamAV on apache.org Hi, I just tried failed test on the cruise control machine pdceltix, I = found this SpringServletTest test failed only when run the whole test = suite together (from rt/frontend/jaxws), it passed if run this test = alone. Haven't figured out what's wrong. I commented out this test for = the time being. Cheers, Jervis =20 > -----Original Message----- > From: Dan Diephouse [mailto:dan@envoisolutions.com] > Sent: Wednesday, December 20, 2006 5:05 PM > To: cxf-dev@incubator.apache.org > Subject: Fwd: cxf Cruisecontrol Build Result: cxf Build Failed >=20 >=20 > Hi All - There seems to be some issue with either a) running my latest > commit on Linux or b) CruiseControl. I can't reproduce the=20 > error and on IRC > Jervis said the tests passed on his Windows box as well, so I=20 > suspect its CC > and not my commit... I am about to disconnect though for the=20 > evening, so if > the issue is not CC related, could someone please disable the=20 > test and i > will look at it first thing in the morning. Thanks, >=20 > - Dan >=20 > ---------- Forwarded message ---------- > From: cxf Build Machine > Date: Dec 20, 2006 12:16 AM > Subject: cxf Cruisecontrol Build Result: cxf Build Failed > To: dandiep@apache.org, eng-celtix-dev@iona.com >=20 > View results here -> > http://pdceltix.boston.amer.iona.com:8080/cruisecontrol/buildr > esults/cxf?log=3Dlog20061220030954 >=20 > BUILD FAILED Ant Error=20 > Message:/x1/iona_cruisecontrol/cxf/build.xml:48: > Build Failed Date of build:12/20/2006 03:09:54 Time to=20 > build:7 minutes 1 > second Last changed:12/20/2006 03:07:54 Last log entry:o Renamed > SoapDestinationFactory to SoapTransportFactory as it now can work as a > conduit too when creating client proxies. o Refactor Holder logic to > interceptors. This is to help the seperation of JAX-WS logic from the > EndpointInvocationHandler and also so we can support the XFire Aegis > databinding Holder class (coming once I get the XFire Aegis support > finished). I don't like the way I implemented this at all.=20 > Especially since > SoapOutInterceptor needs to look for -1 in the type index. I=20 > think we should > probably come up with a better method. o Separated JAX-WS > EndpointInvocationHandler logic out so the Simple frontend=20 > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. o=20 > Add a bunch of > toString() methods to the service model to make debugging=20 > easier. o Move > HeaderTest to jax-ws module and use local transport. Test now takes .3 > seconds instead of 8. Makes for much faster debugging. o Support > get/setServerBean on ServerFactoryBean o Add logging to=20 > PhaseInteceptorChain > so it can be visualized. Just turn logging up to Fine and it=20 > will print out > a diagram of the phases and the interceptors in that phase. o Fix race > condition with PhaseInterceptorChain's pause/resume. There=20 > was a problem > with WS-A/RM in that the executor was resuming the flow=20 > before the current > interceptor had returned and the pausedMessage was set. Now=20 > doInterceptor > notifies resume() once its finished pausing. resume() will=20 > wait for one > second for the chain to finish pausing. A couple thoughts=20 > from things I > noticed while going through the code: - we seem to be removing the > ws-a/ws-rm headers from the header tree. Why?? People will=20 > want to see these > IMO and they'll be surprised that they're gone. - As noticed=20 > on the mailing > list a few days ago, I think there are issues with the > JaxwsInterceptorRemover approach long term. I had to add the holder > interceptors to the list so that they were removed as well. -=20 > SequencetTest > was failing sporadically depending on whether or not logging=20 > was turned up > before I fixed the race condition. This took a very long time=20 > to figure > out... Anyone have hints on how to best debug RM? I started=20 > adding a server > side only test which played messages against the server and=20 > that helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) >=20 > Errors/Warnings: (2) >=20 > Result: 1Tail of log: [surefire] >=20 > [surefire] Running org.apache.cxf.jaxws.ServiceImplTest > [surefire] Tests run: 1, Failures: 0, Errors: 0, Time=20 > elapsed: 0.044 sec > [surefire] >=20 > [surefire] Running org.apache.cxf.jaxws.URIMappingInterceptorRPCTest > [surefire] Tests run: 6, Failures: 0, Errors: 0, Time=20 > elapsed: 0.372 sec > [surefire] >=20 >=20 > Results : > [surefire] Tests run: 109, Failures: 0, Errors: 1 >=20 > [INFO]=20 > -------------------------------------------------------------- > ---------- > [ERROR] BUILD ERROR > [INFO]=20 > -------------------------------------------------------------- > ---------- > [INFO] There are test failures. > [INFO]=20 > -------------------------------------------------------------- > ---------- > [INFO] For more information, run Maven with the -e switch > [INFO]=20 > -------------------------------------------------------------- > ---------- > [INFO] Total time: 6 minutes 35 seconds > [INFO] Finished at: Wed Dec 20 03:16:46 EST 2006 > [INFO] Final Memory: 69M/268M > [INFO]=20 > -------------------------------------------------------------- > ---------- >=20 > Unit Tests: (525) error testInvokingSpringBeans > org.apache.cxf.jaxws.servlet.SpringServletTest Unit Test Error > Details: (1) Test: testInvokingSpringBeans Class: > org.apache.cxf.jaxws.servlet.SpringServletTest > com.meterware.httpunit.HttpNotFoundException: Error on=20 > HTTP request: 404 > OK [http://localhost/services/Greeter] > at=20 > com.meterware.httpunit.WebClient.validateHeaders(WebClient.java:575) > at com.meterware.httpunit.WebClient.updateClient(WebClient.java:464) > at com.meterware.httpunit.WebWindow.updateWindow(WebWindow.java:139) > at=20 > com.meterware.httpunit.WebWindow.getSubframeResponse(WebWindow > .java:130) >=20 > at com.meterware.httpunit.WebWindow.getResponse(WebWindow.java:121) > at com.meterware.httpunit.WebClient.getResponse(WebClient.java:113) > at=20 > org.apache.cxf.jaxws.servlet.SpringServletTest.testInvokingSpr > ingBeans( > SpringServletTest.java:41) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at=20 > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess > orImpl.java:39) >=20 > at sun.reflect.DelegatingMethodAccessorImpl.invoke( > DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:585) > at junit.framework.TestCase.runTest(TestCase.java:154) > at junit.framework.TestCase.runBare(TestCase.java:127) > at junit.framework.TestResult$1.protect(TestResult.java:106) > at junit.framework.TestResult.runProtected(TestResult.java:124) > at junit.framework.TestResult.run(TestResult.java:109) > at junit.framework.TestCase.run(TestCase.java:118) > at junit.framework.TestSuite.runTest(TestSuite.java:208) > at junit.framework.TestSuite.run(TestSuite.java:203) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at=20 > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess > orImpl.java:39) >=20 > at sun.reflect.DelegatingMethodAccessorImpl.invoke( > DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:585) > at org.apache.maven.surefire.battery.JUnitBattery.executeJUnit( > JUnitBattery.java:242) > at=20 > org.apache.maven.surefire.battery.JUnitBattery.execute(JUnitBa > ttery.java:216) >=20 > at=20 > org.apache.maven.surefire.Surefire.executeBattery(Surefire.java:215) > at org.apache.maven.surefire.Surefire.run(Surefire.java:163) > at org.apache.maven.surefire.Surefire.run(Surefire.java:87) > at org.apache.maven.surefire.Surefire.run(Surefire.java:63) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at=20 > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccess > orImpl.java:39) >=20 > at sun.reflect.DelegatingMethodAccessorImpl.invoke( > DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:585) > at=20 > org.apache.maven.surefire.SurefireBooter.main(SurefireBooter.java:785) >=20 > Modifications since last successful build: (104) addeddandiep > /incubator/cxf/trunk/rt/core/src/main/java/org/apache/cxf/fron > tend/MethodDispatcher.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apach > e/cxf/jaxws/SoapFaultTest.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apach > e/cxf/jaxws/URIMappingInterceptorRPCTest.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/ws/rm/src/main/java/org/apache/cxf/ws/ > rm/RMInInterceptor.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/bindings/soap/src/main/java/org/apache > /cxf/binding/soap/model/SoapHeaderInfo.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/integration/jca/src/test/java/org/apache/ > cxf/jca/cxf/JCABusFactoryTest.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apach > e/cxf/jaxws/JAXWSMethodInvoker.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/sys > test/ws/rm/JaxwsInterceptorRemover.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) deleteddandiep > /incubator/cxf/trunk/rt/bindings/soap/src/main/java/org/apache > /cxf/binding/soap/SoapDestinationFactory.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) addeddandiep > /incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apach > e/cxf/jaxws/header/HeaderClientServerTest.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apach > e/cxf/jaxws/support/JaxWsServiceFactoryBeanTest.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/core/src/main/java/org/apache/cxf/test > /AbstractCXFTest.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) deleteddandiep > /incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apac > he/cxf/service/factory/ClientFactoryBean.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) addeddandiep > /incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apach > e/cxf/jaxws/interceptors/HolderOutInterceptor.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/frontend/simple/src/test/java/org/apac > he/cxf/service/factory/ReflectionServiceFactoryTest.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) addeddandiep > /incubator/cxf/trunk/rt/bindings/soap/src/main/java/org/apache > /cxf/binding/soap/SoapTransportFactory.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/bindings/soap/src/main/java/org/apache > /cxf/binding/soap/interceptor/SoapOutInterceptor.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) addeddandiep > /incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apac > he/cxf/frontend/ClientFactoryBean.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/core/src/main/java/org/apache/cxf/inte > rceptor/AbstractInDatabindingInterceptor.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) addeddandiep > /incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apac > he/cxf/frontend/ClientProxyFactoryBean.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apach > e/cxf/jaxws/binding/soap/JaxWsSoapBindingInfoFactoryBean.java1 > 2/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apach > e/cxf/jaxws/ServiceImpl.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apach > e/cxf/jaxws/URIMappingInterceptorDocLitTest.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) unknowndandiep > /incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apach > e/cxf/jaxws/AsyncCallbackFuture.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) addeddandiep > /incubator/cxf/trunk/rt/frontend/simple/src/test/java/org/apac > he/cxf/service/factory/RountripTest.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) deleteddandiep > /incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/sys > test/jaxws/HeaderClientServerTest.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/bindings/soap/src/main/java/org/apache > /cxf/binding/soap/SoapBindingFactory.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up before I fixed the race condition. This took a=20 > very long time > to > figure out... Anyone have hints on how to best debug RM? I=20 > started adding a > server side only test which played messages against the=20 > server and that > helped. > Single threaded tests are so much easier to debug. But I need=20 > to clean it up >=20 > yet and get it fully working before I can commit. (only tests=20 > CreateSequence > right now) modifieddandiep > /incubator/cxf/trunk/rt/bindings/soap/src/main/java/org/apache > /cxf/binding/soap/SoapBindingInfoFactoryBean.java12/20/2006 > 03:07:54o Renamed SoapDestinationFactory to=20 > SoapTransportFactory as it now > can work > as a conduit too when creating client proxies. > o Refactor Holder logic to interceptors. This is to help the=20 > seperation of > JAX-WS logic from the EndpointInvocationHandler and also so=20 > we can support > the XFire Aegis databinding Holder class (coming once I get the XFire > Aegis support finished). I don't like the way I implemented=20 > this at all. > Especially since SoapOutInterceptor needs to look for -1 in=20 > the type index. > I think we should probably come up with a better method. > o Separated JAX-WS EndpointInvocationHandler logic out so the Simple > frontend > can have clients. > o Rename EndpointInvocationHandler to ClientProxy and add > ClientProxy.getClient(Object) to make it easy to get the=20 > underlying client. > This will make it easier to add interceptors to a Client. > o Add a bunch of toString() methods to the service model to=20 > make debugging > easier. > o Move HeaderTest to jax-ws module and use local transport.=20 > Test now takes > .3 seconds instead of 8. Makes for much faster debugging. > o Support get/setServerBean on ServerFactoryBean > o Add logging to PhaseInteceptorChain so it can be=20 > visualized. Just turn > logging up to Fine and it will print out a diagram of the=20 > phases and the > interceptors in that phase. > o Fix race condition with PhaseInterceptorChain's=20 > pause/resume. There was a > problem with WS-A/RM in that the executor was resuming the flow before > the current interceptor had returned and the pausedMessage=20 > was set. Now > doInterceptor notifies resume() once its finished pausing.=20 > resume() will > wait for one second for the chain to finish pausing. >=20 > A couple thoughts from things I noticed while going through the code: > - we seem to be removing the ws-a/ws-rm headers from the=20 > header tree. Why?? > People will want to see these IMO and they'll be surprised=20 > that they're > gone. > - As noticed on the mailing list a few days ago, I think=20 > there are issues > with the JaxwsInterceptorRemover approach long term. I had to=20 > add the holder > interceptors to the list so that they were removed as well. > - SequencetTest was failing sporadically depending on whether=20 > or not logging > was turned up bef >=20 > ... >=20 > [Message clipped] >=20 > --=20 > Dan Diephouse > Envoi Solutions > http://envoisolutions.com | http://netzooid.com/blog >=20