Author: dkulp
Date: Mon Mar 24 12:35:46 2008
New Revision: 640537
URL: http://svn.apache.org/viewvc?rev=640537&view=rev
Log:
Updates for some 2.1 TCK issues
Modified:
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/JaxWsProxyFactoryBean.java
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/ServiceImpl.java
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/handler/HandlerChainInvoker.java
incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/handler/HandlerChainInvokerTest.java
incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/handlers/HandlerInvocationTest.java
Modified:
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/JaxWsProxyFactoryBean.java
URL:
http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/JaxWsProxyFactoryBean.java?rev=640537&r1=640536&r2=640537&view=diff
==============================================================================
---
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/JaxWsProxyFactoryBean.java
(original)
+++
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/JaxWsProxyFactoryBean.java
Mon Mar 24 12:35:46 2008
@@ -48,6 +48,7 @@
public class JaxWsProxyFactoryBean extends ClientProxyFactoryBean {
List<Handler> handlers = new ArrayList<Handler>();
+ boolean loadHandlers = true;
public JaxWsProxyFactoryBean() {
super(new JaxWsClientFactoryBean());
@@ -60,6 +61,13 @@
public List<Handler> getHandlers() {
return handlers;
}
+
+ public void setLoadHandlers(boolean b) {
+ loadHandlers = b;
+ }
+ public boolean isLoadHandlers() {
+ return loadHandlers;
+ }
@Override
@@ -111,9 +119,12 @@
AnnotationHandlerChainBuilder builder = new
AnnotationHandlerChainBuilder();
JaxWsServiceFactoryBean sf =
(JaxWsServiceFactoryBean)getServiceFactory();
List<Handler> chain = new ArrayList<Handler>(handlers);
- chain.addAll(builder.buildHandlerChainFromClass(sf.getServiceClass(),
sf.getEndpointInfo()
- .getName(), sf.getServiceQName(), this.getBindingId()));
-
+ if (loadHandlers) {
+
chain.addAll(builder.buildHandlerChainFromClass(sf.getServiceClass(),
+
sf.getEndpointInfo().getName(),
+
sf.getServiceQName(),
+
this.getBindingId()));
+ }
if (!chain.isEmpty()) {
ResourceManager resourceManager =
getBus().getExtension(ResourceManager.class);
Modified:
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/ServiceImpl.java
URL:
http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/ServiceImpl.java?rev=640537&r1=640536&r2=640537&view=diff
==============================================================================
---
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/ServiceImpl.java
(original)
+++
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/ServiceImpl.java
Mon Mar 24 12:35:46 2008
@@ -349,7 +349,10 @@
clientFac.setAddress(portInfo.getAddress());
}
configureObject(portName.toString() + ".jaxws-client.proxyFactory",
proxyFac);
-
+ if (clazz != ServiceImpl.class) {
+ // handlerchain should be on the generated Service object
+ proxyFac.setLoadHandlers(false);
+ }
Object obj = proxyFac.create();
// Configure the Service
@@ -368,7 +371,6 @@
// Configure the JaxWsEndpoitnImpl
JaxWsEndpointImpl jaxwsEndpoint = (JaxWsEndpointImpl)
clientFac.getClient().getEndpoint();
configureObject(jaxwsEndpoint);
-
List<Handler> hc = jaxwsEndpoint.getJaxwsBinding().getHandlerChain();
hc.addAll(handlerResolver.getHandlerChain(portInfos.get(portName)));
Modified:
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/handler/HandlerChainInvoker.java
URL:
http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/handler/HandlerChainInvoker.java?rev=640537&r1=640536&r2=640537&view=diff
==============================================================================
---
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/handler/HandlerChainInvoker.java
(original)
+++
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/handler/HandlerChainInvoker.java
Mon Mar 24 12:35:46 2008
@@ -371,10 +371,13 @@
}
continueProcessing = false;
setFault(e);
- if (e instanceof SOAPFaultException) {
- throw mapSoapFault((SOAPFaultException)e);
+ if (responseExpected) {
+ //brain dead spec - if it's one way, swallow it
+ if (e instanceof SOAPFaultException) {
+ throw mapSoapFault((SOAPFaultException)e);
+ }
+ throw e;
}
- throw e;
} else {
continueProcessing = false;
if (responseExpected || outbound) {
Modified:
incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/handler/HandlerChainInvokerTest.java
URL:
http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/handler/HandlerChainInvokerTest.java?rev=640537&r1=640536&r2=640537&view=diff
==============================================================================
---
incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/handler/HandlerChainInvokerTest.java
(original)
+++
incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/handler/HandlerChainInvokerTest.java
Mon Mar 24 12:35:46 2008
@@ -615,7 +615,8 @@
//boolean continueProcessing = true;
try {
invoker.invokeLogicalHandlers(false, lmc);
- fail("did not get expected exception");
+ //don't fail. TCK says this shouldn't be thrown.
+ //fail("did not get expected exception");
} catch (ProtocolException e) {
assertEquals("banzai", e.getMessage());
}
Modified:
incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/handlers/HandlerInvocationTest.java
URL:
http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/handlers/HandlerInvocationTest.java?rev=640537&r1=640536&r2=640537&view=diff
==============================================================================
---
incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/handlers/HandlerInvocationTest.java
(original)
+++
incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/handlers/HandlerInvocationTest.java
Mon Mar 24 12:35:46 2008
@@ -495,7 +495,7 @@
try {
handlerTest.ping();
- fail("did not get expected exception");
+ //fail("did not get expected exception");
} catch (ProtocolException e) {
assertEquals(clientHandlerMessage, e.getMessage());
}
@@ -664,7 +664,7 @@
try {
handlerTest.ping();
- fail("did not get expected exception");
+ //fail("did not get expected exception");
} catch (ProtocolException e) {
assertEquals(clientHandlerMessage, e.getMessage());
}