[jbossws-commits] JBossWS SVN: r14594 - in stack/cxf/trunk/modules: server/src/main/java/org/jboss/wsf/stack/cxf/configuration and 10 other directories.

jbossws-commits at lists.jboss.org jbossws-commits at lists.jboss.org
Tue Jun 21 05:46:04 EDT 2011


Author: richard.opalka at jboss.com
Date: 2011-06-21 05:46:03 -0400 (Tue, 21 Jun 2011)
New Revision: 14594

Added:
   stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/AbstractInvoker.java
   stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/InvokerEJB3.java
   stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/InvokerJSE.java
Removed:
   stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFInvoker.java
Modified:
   stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/NonSpringBusHolder.java
   stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/ServerBeanCustomizer.java
   stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/deployment/aspect/DescriptorDeploymentAspect.java
   stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/MetadataBuilder.java
   stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/services/DDEndpoint.java
   stack/cxf/trunk/modules/server/src/main/resources/jbossws-cxf-config-as6.xml
   stack/cxf/trunk/modules/server/src/main/resources/jbossws-cxf-config-as7.xml
   stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/aegis/jaxws/WEB-INF/jbossws-cxf.xml
   stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/descriptor/WEB-INF/jbossws-cxf.xml
   stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/wsrm/basic-rpc/WEB-INF/jbossws-cxf.xml
   stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/jmstransport/WEB-INF/jbossws-cxf.xml
   stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/wsse/sign-encrypt/WEB-INF/jbossws-cxf.xml
   stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/wsseEJB/META-INF/jbossws-cxf.xml
Log:
rollback previous commit

Copied: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/AbstractInvoker.java (from rev 14588, stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/AbstractInvoker.java)
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/AbstractInvoker.java	                        (rev 0)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/AbstractInvoker.java	2011-06-21 09:46:03 UTC (rev 14594)
@@ -0,0 +1,350 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.jboss.wsf.stack.cxf;
+
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import javax.activation.DataHandler;
+import javax.xml.ws.WebServiceContext;
+import javax.xml.ws.handler.MessageContext;
+import javax.xml.ws.handler.MessageContext.Scope;
+import javax.xml.ws.soap.SOAPFaultException;
+
+import org.apache.cxf.Bus;
+import org.apache.cxf.BusFactory;
+import org.apache.cxf.attachment.AttachmentImpl;
+import org.apache.cxf.binding.soap.SoapFault;
+import org.apache.cxf.binding.soap.SoapMessage;
+import org.apache.cxf.frontend.MethodDispatcher;
+import org.apache.cxf.headers.Header;
+import org.apache.cxf.helpers.CastUtils;
+import org.apache.cxf.interceptor.Fault;
+import org.apache.cxf.jaxws.context.WebServiceContextImpl;
+import org.apache.cxf.jaxws.context.WrappedMessageContext;
+import org.apache.cxf.message.Attachment;
+import org.apache.cxf.message.Exchange;
+import org.apache.cxf.message.FaultMode;
+import org.apache.cxf.message.Message;
+import org.apache.cxf.message.MessageContentsList;
+import org.apache.cxf.service.Service;
+import org.apache.cxf.service.invoker.Invoker;
+import org.apache.cxf.service.model.BindingOperationInfo;
+import org.jboss.wsf.spi.SPIProvider;
+import org.jboss.wsf.spi.SPIProviderResolver;
+import org.jboss.wsf.spi.classloading.ClassLoaderProvider;
+import org.jboss.wsf.spi.deployment.Endpoint;
+import org.jboss.wsf.spi.invocation.Invocation;
+import org.jboss.wsf.spi.invocation.InvocationContext;
+import org.jboss.wsf.spi.invocation.InvocationHandler;
+import org.jboss.wsf.spi.invocation.WebServiceContextFactory;
+
+/**
+ * An abstract CXF invoker
+ * 
+ * @author Thomas.Diesler at jboss.org
+ * @author richard.opalka at jboss.com
+ * @author alessio.soldano at jboss.com
+ * 
+ * @see org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker
+ */
+public abstract class AbstractInvoker implements Invoker
+{
+   private static final Object[] NO_ARGS = new Object[]{};
+   private Object targetBean;
+   private WebServiceContextFactory contextFactory;
+   
+   public void setTargetBean(Object targetBean)
+   {
+      this.targetBean = targetBean;
+   }
+   
+   public Object invoke(Exchange exchange, Object o)
+   {
+      // set up the webservice request context 
+      WrappedMessageContext ctx = new WrappedMessageContext(exchange.getInMessage(), Scope.APPLICATION);
+
+      Map<String, Object> handlerScopedStuff = removeHandlerProperties(ctx);
+
+      WebServiceContextImpl.setMessageContext(ctx);
+
+      Object retObj = null;
+      try
+      {
+         retObj = _invokeInternal(exchange, o, ctx);
+
+         addHandlerProperties(ctx, handlerScopedStuff);
+
+         //update the webservice response context
+         updateWebServiceContext(exchange, ctx);
+      }
+      finally
+      {
+         //clear the WebServiceContextImpl's ThreadLocal variable
+         WebServiceContextImpl.clear();
+      }
+
+      return new MessageContentsList(retObj);
+   }
+
+   private Object _invokeInternal(Exchange exchange, Object o, WrappedMessageContext ctx)
+   {
+      BindingOperationInfo bop = exchange.get(BindingOperationInfo.class);
+      MethodDispatcher md = (MethodDispatcher)exchange.get(Service.class).get(MethodDispatcher.class.getName());
+      Method m = md.getMethod(bop);
+
+      Object[] params = NO_ARGS;
+      List<Object> paramList = null;
+      if (m.getParameterTypes().length != 0)
+      {
+         if (o instanceof List<?>)
+         {
+            paramList = CastUtils.cast((List<?>)o);
+            params = paramList.toArray();
+         }
+         else
+         {
+            params = new Object[]{o};
+         }
+      }
+
+      Endpoint ep = exchange.get(Endpoint.class);
+      InvocationHandler invHandler = ep.getInvocationHandler();
+
+      Invocation inv = invHandler.createInvocation();
+      InvocationContext invContext = inv.getInvocationContext();
+      invContext.addAttachment(WebServiceContext.class, getWebServiceContext(ctx));
+      invContext.addAttachment(MessageContext.class, ctx);
+      invContext.setTargetBean(targetBean != null ? targetBean : ep.getAttachment(Object.class)); //JBWS-2486 - JBWS-3002
+      inv.setJavaMethod(m);
+      inv.setArgs(params);
+
+      Object retObj = null;
+      Bus threadBus = BusFactory.getThreadDefaultBus(false);
+      try
+      {
+         invHandler.invoke(ep, inv);
+         retObj = inv.getReturnValue();
+      } catch (InvocationTargetException e) {
+         Throwable t = e.getCause();
+         if (t == null) {
+            t = e;
+         }
+         exchange.getInMessage().put(FaultMode.class, FaultMode.UNCHECKED_APPLICATION_FAULT);
+         for (Class<?> cl : m.getExceptionTypes()) {
+            if (cl.isInstance(t)) {
+               exchange.getInMessage().put(FaultMode.class, 
+                     FaultMode.CHECKED_APPLICATION_FAULT);                    
+            }
+         }
+
+         if (t instanceof Fault) {
+            exchange.getInMessage().put(FaultMode.class, 
+                  FaultMode.CHECKED_APPLICATION_FAULT);                    
+            throw (Fault)t;
+         }
+         throw createFault(t, m, paramList, true);
+      } catch (Fault f) {
+         exchange.getInMessage().put(FaultMode.class, FaultMode.UNCHECKED_APPLICATION_FAULT);
+         throw f;
+      } catch (Exception e) {
+         exchange.getInMessage().put(FaultMode.class, FaultMode.UNCHECKED_APPLICATION_FAULT);
+         throw createFault(e, m, paramList, false);
+      }
+      finally
+      {
+         //make sure the right bus is restored after coming back from the endpoint method
+         BusFactory.setThreadDefaultBus(threadBus);
+         // JBWS-2486
+         if (ep.getAttachment(Object.class) == null)
+         {
+            ep.addAttachment(Object.class, inv.getInvocationContext().getTargetBean());
+         }
+      }
+
+      return retObj;
+   }
+   
+   protected SOAPFaultException findSoapFaultException(Throwable ex) {
+      if (ex instanceof SOAPFaultException) {
+          return (SOAPFaultException)ex;
+      }
+      if (ex.getCause() != null) {
+          return findSoapFaultException(ex.getCause());
+      }
+      return null;
+  }
+  
+  protected Fault createFault(Throwable ex, Method m, List<Object> params, boolean checked) {
+      //map the JAX-WS faults
+      SOAPFaultException sfe = findSoapFaultException(ex);
+      if (sfe != null) {
+          SoapFault fault = new SoapFault(sfe.getFault().getFaultString(),
+                                          sfe,
+                                          sfe.getFault().getFaultCodeAsQName());
+          fault.setRole(sfe.getFault().getFaultActor());
+          fault.setDetail(sfe.getFault().getDetail());
+          
+          return fault;
+      }
+      
+      return new Fault(ex);
+  }
+
+
+   protected WebServiceContext getWebServiceContext(MessageContext msgCtx)
+   {
+      return getWebServiceContextFactory().newWebServiceContext(msgCtx);
+   }
+
+   protected Map<String, Object> removeHandlerProperties(WrappedMessageContext ctx)
+   {
+      Map<String, Scope> scopes = CastUtils.cast((Map<?, ?>)ctx.get(WrappedMessageContext.SCOPES));
+      Map<String, Object> handlerScopedStuff = new HashMap<String, Object>();
+      if (scopes != null)
+      {
+         for (Map.Entry<String, Scope> scope : scopes.entrySet())
+         {
+            if (scope.getValue() == Scope.HANDLER)
+            {
+               handlerScopedStuff.put(scope.getKey(), ctx.get(scope.getKey()));
+            }
+         }
+         for (String key : handlerScopedStuff.keySet())
+         {
+            ctx.remove(key);
+         }
+      }
+      return handlerScopedStuff;
+   }
+
+   protected void updateWebServiceContext(Exchange exchange, MessageContext ctx)
+   {
+      // Guard against wrong type associated with header list.
+      // Need to copy header only if the message is going out.
+      if (ctx.containsKey(Header.HEADER_LIST) && ctx.get(Header.HEADER_LIST) instanceof List<?>)
+      {
+         List<?> list = (List<?>) ctx.get(Header.HEADER_LIST);
+         if (list != null && !list.isEmpty()) {
+            SoapMessage sm = (SoapMessage) createResponseMessage(exchange);
+            if (sm != null)
+            {
+               Iterator<?> iter = list.iterator();
+               while (iter.hasNext())
+               {
+                  sm.getHeaders().add((Header) iter.next());
+               }
+            }
+         }
+      }
+      if (exchange.getOutMessage() != null)
+      {
+         Message out = exchange.getOutMessage();
+         if (out.containsKey(Message.PROTOCOL_HEADERS))
+         {
+            Map<String, List<String>> heads = CastUtils
+            .cast((Map<?, ?>)exchange.getOutMessage().get(Message.PROTOCOL_HEADERS));
+            if (heads.containsKey("Content-Type")) {
+               List<String> ct = heads.get("Content-Type");
+               exchange.getOutMessage().put(Message.CONTENT_TYPE, ct.get(0));
+               heads.remove("Content-Type");
+            }
+         }
+         Map<String, DataHandler> dataHandlers 
+         = CastUtils.cast((Map<?, ?>)out.get(MessageContext.OUTBOUND_MESSAGE_ATTACHMENTS));
+         if (dataHandlers != null && !dataHandlers.isEmpty())
+         {
+            Collection<Attachment> attachments = out.getAttachments();
+            if (attachments == null)
+            {
+               attachments = new ArrayList<Attachment>();
+               out.setAttachments(attachments);
+            }
+            for (Map.Entry<String, DataHandler> entry : dataHandlers.entrySet())
+            {
+               Attachment att = new AttachmentImpl(entry.getKey(), entry.getValue());
+               attachments.add(att);
+            }
+         }
+         out.remove(MessageContext.OUTBOUND_MESSAGE_ATTACHMENTS);
+      }
+   }
+
+   private Message createResponseMessage(Exchange exchange)
+   {
+      if (exchange == null) {
+         return null;
+      }
+      Message m = exchange.getOutMessage();
+      if (m == null && !exchange.isOneWay())
+      {
+         org.apache.cxf.endpoint.Endpoint ep = exchange.get(org.apache.cxf.endpoint.Endpoint.class);
+         m = ep.getBinding().createMessage();
+         exchange.setOutMessage(m);
+      }
+      return m;
+   }
+
+   protected void addHandlerProperties(WrappedMessageContext ctx, Map<String, Object> handlerScopedStuff)
+   {
+      for (Map.Entry<String, Object> key : handlerScopedStuff.entrySet())
+      {
+         ctx.put(key.getKey(), key.getValue(), Scope.HANDLER);
+      }
+   }
+   
+   protected synchronized WebServiceContextFactory getWebServiceContextFactory()
+   {
+      if (contextFactory == null)
+      {
+         ClassLoader cl = ClassLoaderProvider.getDefaultProvider().getServerIntegrationClassLoader();
+         SPIProvider spiProvider = SPIProviderResolver.getInstance(cl).getProvider();
+         contextFactory = spiProvider.getSPI(WebServiceContextFactory.class, cl);
+      }
+      return contextFactory;
+   }
+
+}

Deleted: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFInvoker.java
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFInvoker.java	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFInvoker.java	2011-06-21 09:46:03 UTC (rev 14594)
@@ -1,350 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2006, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.jboss.wsf.stack.cxf;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import javax.activation.DataHandler;
-import javax.xml.ws.WebServiceContext;
-import javax.xml.ws.handler.MessageContext;
-import javax.xml.ws.handler.MessageContext.Scope;
-import javax.xml.ws.soap.SOAPFaultException;
-
-import org.apache.cxf.Bus;
-import org.apache.cxf.BusFactory;
-import org.apache.cxf.attachment.AttachmentImpl;
-import org.apache.cxf.binding.soap.SoapFault;
-import org.apache.cxf.binding.soap.SoapMessage;
-import org.apache.cxf.frontend.MethodDispatcher;
-import org.apache.cxf.headers.Header;
-import org.apache.cxf.helpers.CastUtils;
-import org.apache.cxf.interceptor.Fault;
-import org.apache.cxf.jaxws.context.WebServiceContextImpl;
-import org.apache.cxf.jaxws.context.WrappedMessageContext;
-import org.apache.cxf.message.Attachment;
-import org.apache.cxf.message.Exchange;
-import org.apache.cxf.message.FaultMode;
-import org.apache.cxf.message.Message;
-import org.apache.cxf.message.MessageContentsList;
-import org.apache.cxf.service.Service;
-import org.apache.cxf.service.invoker.Invoker;
-import org.apache.cxf.service.model.BindingOperationInfo;
-import org.jboss.wsf.spi.SPIProvider;
-import org.jboss.wsf.spi.SPIProviderResolver;
-import org.jboss.wsf.spi.classloading.ClassLoaderProvider;
-import org.jboss.wsf.spi.deployment.Endpoint;
-import org.jboss.wsf.spi.invocation.Invocation;
-import org.jboss.wsf.spi.invocation.InvocationContext;
-import org.jboss.wsf.spi.invocation.InvocationHandler;
-import org.jboss.wsf.spi.invocation.WebServiceContextFactory;
-
-/**
- * An abstract CXF invoker
- * 
- * @author Thomas.Diesler at jboss.org
- * @author richard.opalka at jboss.com
- * @author alessio.soldano at jboss.com
- * 
- * @see org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker
- */
-public final class CXFInvoker implements Invoker
-{
-   private static final Object[] NO_ARGS = new Object[]{};
-   private Object targetBean;
-   private WebServiceContextFactory contextFactory;
-   
-   public void setTargetBean(Object targetBean)
-   {
-      this.targetBean = targetBean;
-   }
-   
-   public Object invoke(Exchange exchange, Object o)
-   {
-      // set up the webservice request context 
-      WrappedMessageContext ctx = new WrappedMessageContext(exchange.getInMessage(), Scope.APPLICATION);
-
-      Map<String, Object> handlerScopedStuff = removeHandlerProperties(ctx);
-
-      WebServiceContextImpl.setMessageContext(ctx);
-
-      Object retObj = null;
-      try
-      {
-         retObj = _invokeInternal(exchange, o, ctx);
-
-         addHandlerProperties(ctx, handlerScopedStuff);
-
-         //update the webservice response context
-         updateWebServiceContext(exchange, ctx);
-      }
-      finally
-      {
-         //clear the WebServiceContextImpl's ThreadLocal variable
-         WebServiceContextImpl.clear();
-      }
-
-      return new MessageContentsList(retObj);
-   }
-
-   private Object _invokeInternal(Exchange exchange, Object o, WrappedMessageContext ctx)
-   {
-      BindingOperationInfo bop = exchange.get(BindingOperationInfo.class);
-      MethodDispatcher md = (MethodDispatcher)exchange.get(Service.class).get(MethodDispatcher.class.getName());
-      Method m = md.getMethod(bop);
-
-      Object[] params = NO_ARGS;
-      List<Object> paramList = null;
-      if (m.getParameterTypes().length != 0)
-      {
-         if (o instanceof List<?>)
-         {
-            paramList = CastUtils.cast((List<?>)o);
-            params = paramList.toArray();
-         }
-         else
-         {
-            params = new Object[]{o};
-         }
-      }
-
-      Endpoint ep = exchange.get(Endpoint.class);
-      InvocationHandler invHandler = ep.getInvocationHandler();
-
-      Invocation inv = invHandler.createInvocation();
-      InvocationContext invContext = inv.getInvocationContext();
-      invContext.addAttachment(WebServiceContext.class, getWebServiceContext(ctx));
-      invContext.addAttachment(MessageContext.class, ctx);
-      invContext.setTargetBean(targetBean != null ? targetBean : ep.getAttachment(Object.class)); //JBWS-2486 - JBWS-3002
-      inv.setJavaMethod(m);
-      inv.setArgs(params);
-
-      Object retObj = null;
-      Bus threadBus = BusFactory.getThreadDefaultBus(false);
-      try
-      {
-         invHandler.invoke(ep, inv);
-         retObj = inv.getReturnValue();
-      } catch (InvocationTargetException e) {
-         Throwable t = e.getCause();
-         if (t == null) {
-            t = e;
-         }
-         exchange.getInMessage().put(FaultMode.class, FaultMode.UNCHECKED_APPLICATION_FAULT);
-         for (Class<?> cl : m.getExceptionTypes()) {
-            if (cl.isInstance(t)) {
-               exchange.getInMessage().put(FaultMode.class, 
-                     FaultMode.CHECKED_APPLICATION_FAULT);                    
-            }
-         }
-
-         if (t instanceof Fault) {
-            exchange.getInMessage().put(FaultMode.class, 
-                  FaultMode.CHECKED_APPLICATION_FAULT);                    
-            throw (Fault)t;
-         }
-         throw createFault(t, m, paramList, true);
-      } catch (Fault f) {
-         exchange.getInMessage().put(FaultMode.class, FaultMode.UNCHECKED_APPLICATION_FAULT);
-         throw f;
-      } catch (Exception e) {
-         exchange.getInMessage().put(FaultMode.class, FaultMode.UNCHECKED_APPLICATION_FAULT);
-         throw createFault(e, m, paramList, false);
-      }
-      finally
-      {
-         //make sure the right bus is restored after coming back from the endpoint method
-         BusFactory.setThreadDefaultBus(threadBus);
-         // JBWS-2486
-         if (ep.getAttachment(Object.class) == null)
-         {
-            ep.addAttachment(Object.class, inv.getInvocationContext().getTargetBean());
-         }
-      }
-
-      return retObj;
-   }
-   
-   protected SOAPFaultException findSoapFaultException(Throwable ex) {
-      if (ex instanceof SOAPFaultException) {
-          return (SOAPFaultException)ex;
-      }
-      if (ex.getCause() != null) {
-          return findSoapFaultException(ex.getCause());
-      }
-      return null;
-  }
-  
-  protected Fault createFault(Throwable ex, Method m, List<Object> params, boolean checked) {
-      //map the JAX-WS faults
-      SOAPFaultException sfe = findSoapFaultException(ex);
-      if (sfe != null) {
-          SoapFault fault = new SoapFault(sfe.getFault().getFaultString(),
-                                          sfe,
-                                          sfe.getFault().getFaultCodeAsQName());
-          fault.setRole(sfe.getFault().getFaultActor());
-          fault.setDetail(sfe.getFault().getDetail());
-          
-          return fault;
-      }
-      
-      return new Fault(ex);
-  }
-
-
-   protected WebServiceContext getWebServiceContext(MessageContext msgCtx)
-   {
-      return getWebServiceContextFactory().newWebServiceContext(msgCtx);
-   }
-
-   protected Map<String, Object> removeHandlerProperties(WrappedMessageContext ctx)
-   {
-      Map<String, Scope> scopes = CastUtils.cast((Map<?, ?>)ctx.get(WrappedMessageContext.SCOPES));
-      Map<String, Object> handlerScopedStuff = new HashMap<String, Object>();
-      if (scopes != null)
-      {
-         for (Map.Entry<String, Scope> scope : scopes.entrySet())
-         {
-            if (scope.getValue() == Scope.HANDLER)
-            {
-               handlerScopedStuff.put(scope.getKey(), ctx.get(scope.getKey()));
-            }
-         }
-         for (String key : handlerScopedStuff.keySet())
-         {
-            ctx.remove(key);
-         }
-      }
-      return handlerScopedStuff;
-   }
-
-   protected void updateWebServiceContext(Exchange exchange, MessageContext ctx)
-   {
-      // Guard against wrong type associated with header list.
-      // Need to copy header only if the message is going out.
-      if (ctx.containsKey(Header.HEADER_LIST) && ctx.get(Header.HEADER_LIST) instanceof List<?>)
-      {
-         List<?> list = (List<?>) ctx.get(Header.HEADER_LIST);
-         if (list != null && !list.isEmpty()) {
-            SoapMessage sm = (SoapMessage) createResponseMessage(exchange);
-            if (sm != null)
-            {
-               Iterator<?> iter = list.iterator();
-               while (iter.hasNext())
-               {
-                  sm.getHeaders().add((Header) iter.next());
-               }
-            }
-         }
-      }
-      if (exchange.getOutMessage() != null)
-      {
-         Message out = exchange.getOutMessage();
-         if (out.containsKey(Message.PROTOCOL_HEADERS))
-         {
-            Map<String, List<String>> heads = CastUtils
-            .cast((Map<?, ?>)exchange.getOutMessage().get(Message.PROTOCOL_HEADERS));
-            if (heads.containsKey("Content-Type")) {
-               List<String> ct = heads.get("Content-Type");
-               exchange.getOutMessage().put(Message.CONTENT_TYPE, ct.get(0));
-               heads.remove("Content-Type");
-            }
-         }
-         Map<String, DataHandler> dataHandlers 
-         = CastUtils.cast((Map<?, ?>)out.get(MessageContext.OUTBOUND_MESSAGE_ATTACHMENTS));
-         if (dataHandlers != null && !dataHandlers.isEmpty())
-         {
-            Collection<Attachment> attachments = out.getAttachments();
-            if (attachments == null)
-            {
-               attachments = new ArrayList<Attachment>();
-               out.setAttachments(attachments);
-            }
-            for (Map.Entry<String, DataHandler> entry : dataHandlers.entrySet())
-            {
-               Attachment att = new AttachmentImpl(entry.getKey(), entry.getValue());
-               attachments.add(att);
-            }
-         }
-         out.remove(MessageContext.OUTBOUND_MESSAGE_ATTACHMENTS);
-      }
-   }
-
-   private Message createResponseMessage(Exchange exchange)
-   {
-      if (exchange == null) {
-         return null;
-      }
-      Message m = exchange.getOutMessage();
-      if (m == null && !exchange.isOneWay())
-      {
-         org.apache.cxf.endpoint.Endpoint ep = exchange.get(org.apache.cxf.endpoint.Endpoint.class);
-         m = ep.getBinding().createMessage();
-         exchange.setOutMessage(m);
-      }
-      return m;
-   }
-
-   protected void addHandlerProperties(WrappedMessageContext ctx, Map<String, Object> handlerScopedStuff)
-   {
-      for (Map.Entry<String, Object> key : handlerScopedStuff.entrySet())
-      {
-         ctx.put(key.getKey(), key.getValue(), Scope.HANDLER);
-      }
-   }
-   
-   protected WebServiceContextFactory getWebServiceContextFactory()
-   {
-      if (contextFactory == null)
-      {
-         ClassLoader cl = ClassLoaderProvider.getDefaultProvider().getServerIntegrationClassLoader();
-         SPIProvider spiProvider = SPIProviderResolver.getInstance(cl).getProvider();
-         contextFactory = spiProvider.getSPI(WebServiceContextFactory.class, cl);
-      }
-      return contextFactory;
-   }
-
-}

Copied: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/InvokerEJB3.java (from rev 14588, stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/InvokerEJB3.java)
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/InvokerEJB3.java	                        (rev 0)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/InvokerEJB3.java	2011-06-21 09:46:03 UTC (rev 14594)
@@ -0,0 +1,35 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.wsf.stack.cxf;
+
+
+/**
+ * An XFire invoker for EJB3
+ * 
+ * @author Thomas.Diesler at jboss.org
+ * @author alessio.soldano at jboss.com
+ * @since 21-May-2007
+ */
+public class InvokerEJB3 extends AbstractInvoker
+{
+   // TODO: remove this class
+}

Copied: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/InvokerJSE.java (from rev 14588, stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/InvokerJSE.java)
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/InvokerJSE.java	                        (rev 0)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/InvokerJSE.java	2011-06-21 09:46:03 UTC (rev 14594)
@@ -0,0 +1,35 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.wsf.stack.cxf;
+
+
+/**
+ * An CXF invoker for JSE
+ * 
+ * @author Thomas.Diesler at jboss.org
+ * @author alessio.soldano at jboss.com
+ * @since 21-May-2007
+ */
+public class InvokerJSE extends AbstractInvoker
+{
+   // TODO: remove this class
+}

Modified: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/NonSpringBusHolder.java
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/NonSpringBusHolder.java	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/NonSpringBusHolder.java	2011-06-21 09:46:03 UTC (rev 14594)
@@ -40,7 +40,6 @@
 import org.jboss.ws.api.binding.BindingCustomization;
 import org.jboss.wsf.spi.deployment.Endpoint;
 import org.jboss.wsf.spi.deployment.UnifiedVirtualFile;
-import org.jboss.wsf.stack.cxf.CXFInvoker;
 import org.jboss.wsf.stack.cxf.client.configuration.JBossWSNonSpringBusFactory;
 import org.jboss.wsf.stack.cxf.client.configuration.JBossWSNonSpringConfigurer;
 import org.jboss.wsf.stack.cxf.deployment.EndpointImpl;
@@ -92,7 +91,7 @@
       for (DDEndpoint dde : metadata.getEndpoints())
       {
          EndpointImpl endpoint = new EndpointImpl(bus, newInstance(dde.getImplementor()));
-         endpoint.setInvoker(new CXFInvoker());
+         endpoint.setInvoker((Invoker) newInstance(dde.getInvoker()));
          endpoint.setAddress(dde.getAddress());
          endpoint.setEndpointName(dde.getPortName());
          endpoint.setServiceName(dde.getServiceName());

Modified: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/ServerBeanCustomizer.java
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/ServerBeanCustomizer.java	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/ServerBeanCustomizer.java	2011-06-21 09:46:03 UTC (rev 14594)
@@ -35,7 +35,7 @@
 import org.jboss.wsf.spi.management.ServerConfigFactory;
 import org.jboss.wsf.spi.metadata.config.ConfigMetaDataParser;
 import org.jboss.wsf.spi.metadata.config.ConfigRoot;
-import org.jboss.wsf.stack.cxf.CXFInvoker;
+import org.jboss.wsf.stack.cxf.AbstractInvoker;
 import org.jboss.wsf.stack.cxf.client.configuration.BeanCustomizer;
 import org.jboss.wsf.stack.cxf.deployment.EndpointImpl;
 import org.jboss.wsf.stack.cxf.deployment.WSDLFilePublisher;
@@ -67,9 +67,9 @@
       {
          ServerFactoryBean factory = (ServerFactoryBean) beanInstance;
 
-         if (factory.getInvoker() instanceof CXFInvoker)
+         if (factory.getInvoker() instanceof AbstractInvoker)
          {
-            ((CXFInvoker) factory.getInvoker()).setTargetBean(factory.getServiceBean());
+            ((AbstractInvoker) factory.getInvoker()).setTargetBean(factory.getServiceBean());
          }
          if (depEndpoints != null)
          {

Modified: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/deployment/aspect/DescriptorDeploymentAspect.java
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/deployment/aspect/DescriptorDeploymentAspect.java	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/deployment/aspect/DescriptorDeploymentAspect.java	2011-06-21 09:46:03 UTC (rev 14594)
@@ -48,6 +48,19 @@
    // provide logging
    private static final Logger log = Logger.getLogger(DescriptorDeploymentAspect.class);
 
+   private String invokerEJB3;
+   private String invokerJSE;
+
+   public void setInvokerEJB3(String invokerEJB3)
+   {
+      this.invokerEJB3 = invokerEJB3;
+   }
+
+   public void setInvokerJSE(String invokerJSE)
+   {
+      this.invokerJSE = invokerJSE;
+   }
+   
    @Override
    public void start(Deployment dep)
    {
@@ -147,7 +160,7 @@
    private DDBeans generateMetadataFromDeployment(Deployment dep)
    {
       MetadataBuilder builder = new MetadataBuilder();
-      DDBeans dd = builder.build(dep);
+      DDBeans dd = builder.build(dep, invokerEJB3, invokerJSE);
       dep.addAttachment(DDBeans.class, dd);
       return dd;
    }

Modified: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/MetadataBuilder.java
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/MetadataBuilder.java	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/MetadataBuilder.java	2011-06-21 09:46:03 UTC (rev 14594)
@@ -37,7 +37,9 @@
 import org.jboss.ws.common.JavaUtils;
 import org.jboss.wsf.spi.deployment.ArchiveDeployment;
 import org.jboss.wsf.spi.deployment.Deployment;
+import org.jboss.wsf.spi.deployment.Deployment.DeploymentType;
 import org.jboss.wsf.spi.deployment.Endpoint;
+import org.jboss.wsf.spi.deployment.HttpEndpoint;
 import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerChainMetaData;
 import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerChainsMetaData;
 import org.jboss.wsf.spi.metadata.j2ee.serviceref.UnifiedHandlerMetaData;
@@ -64,12 +66,27 @@
       
    }
    
-   public DDBeans build(Deployment dep)
+   public DDBeans build(Deployment dep, String invokerEJB3, String invokerJSE)
    {
+      DeploymentType depType = dep.getType();
       DDBeans dd = new DDBeans();
       for (Endpoint ep : dep.getService().getEndpoints())
       {
          DDEndpoint ddep = createDDEndpoint(ep.getTargetBeanClass(), (ArchiveDeployment)dep, ep);
+
+         if (ep instanceof HttpEndpoint)
+         {
+            if (depType == DeploymentType.JAXWS_EJB3)
+            {
+               ddep.setInvoker(invokerEJB3);
+            }
+   
+            if (depType == DeploymentType.JAXWS_JSE)
+            {
+               ddep.setInvoker(invokerJSE);
+            }
+         }
+
          processWSDDContribution(ddep, (ArchiveDeployment)dep);
 
          log.info("Add " + ddep);

Modified: stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/services/DDEndpoint.java
===================================================================
--- stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/services/DDEndpoint.java	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/services/DDEndpoint.java	2011-06-21 09:46:03 UTC (rev 14594)
@@ -44,6 +44,8 @@
 
    private String implementor;
 
+   private String invoker;
+
    private boolean mtomEnabled;
    
    private int mtomThreshold;
@@ -141,6 +143,11 @@
       this.epClass = epClass;
    }
 
+   public String getInvoker()
+   {
+      return invoker;
+   }
+   
    public List<String> getHandlers()
    {
       return handlers;
@@ -151,6 +158,11 @@
       return mtomEnabled;
    }
 
+   public void setInvoker(String invoker)
+   {
+      this.invoker = invoker;
+   }
+   
    public void setHandlers(List<String> handlers)
    {
       this.handlers = handlers;
@@ -264,6 +276,11 @@
         }
        
 
+      if (this.invoker != null)
+      {
+         writer.write("<jaxws:invoker><bean class='" + this.invoker + "'/></jaxws:invoker>");
+      }
+      
       if (this.handlers != null && !this.handlers.isEmpty())
       {
          writer.write("<jaxws:handlers>");
@@ -304,6 +321,7 @@
       str.append("\n id=" + this.id);
       str.append("\n address=" + this.address);
       str.append("\n implementor=" + this.implementor);
+      str.append("\n invoker=" + this.invoker);
       str.append("\n serviceName=" + this.serviceName);
       str.append("\n portName=" + this.portName);
       str.append("\n wsdlLocation=" + this.wsdlLocation);

Modified: stack/cxf/trunk/modules/server/src/main/resources/jbossws-cxf-config-as6.xml
===================================================================
--- stack/cxf/trunk/modules/server/src/main/resources/jbossws-cxf-config-as6.xml	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/server/src/main/resources/jbossws-cxf-config-as6.xml	2011-06-21 09:46:03 UTC (rev 14594)
@@ -49,6 +49,8 @@
   <bean name="WSCXFDescriptorDeploymentAspect" class="org.jboss.wsf.stack.cxf.deployment.aspect.DescriptorDeploymentAspect">
     <property name="requires">EndpointAddress,JAXBIntros</property>
     <property name="provides">StackDescriptor</property>
+    <property name="invokerEJB3">org.jboss.wsf.stack.cxf.InvokerEJB3</property>
+    <property name="invokerJSE">org.jboss.wsf.stack.cxf.InvokerJSE</property>
     <property name="forJaxRpc">false</property>
   </bean>
 

Modified: stack/cxf/trunk/modules/server/src/main/resources/jbossws-cxf-config-as7.xml
===================================================================
--- stack/cxf/trunk/modules/server/src/main/resources/jbossws-cxf-config-as7.xml	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/server/src/main/resources/jbossws-cxf-config-as7.xml	2011-06-21 09:46:03 UTC (rev 14594)
@@ -40,6 +40,8 @@
   <deploymentAspect class="org.jboss.wsf.stack.cxf.deployment.aspect.DescriptorDeploymentAspect">
     <property name="requires" class="java.lang.String">EndpointAddress,JAXBIntros</property>
     <property name="provides" class="java.lang.String">StackDescriptor</property>
+    <property name="invokerEJB3" class="java.lang.String">org.jboss.wsf.stack.cxf.InvokerEJB3</property>
+    <property name="invokerJSE" class="java.lang.String">org.jboss.wsf.stack.cxf.InvokerJSE</property>
     <property name="forJaxRpc" class="boolean">false</property>
   </deploymentAspect>
 

Modified: stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/aegis/jaxws/WEB-INF/jbossws-cxf.xml
===================================================================
--- stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/aegis/jaxws/WEB-INF/jbossws-cxf.xml	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/aegis/jaxws/WEB-INF/jbossws-cxf.xml	2011-06-21 09:46:03 UTC (rev 14594)
@@ -19,6 +19,9 @@
 		<jaxws:serviceFactory>
 			<ref bean='aegis-service-factory' />
 		</jaxws:serviceFactory>
+		<jaxws:invoker>
+			<bean class='org.jboss.wsf.stack.cxf.InvokerJSE' />
+		</jaxws:invoker>
 	</jaxws:endpoint>
 
 </beans>

Modified: stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/descriptor/WEB-INF/jbossws-cxf.xml
===================================================================
--- stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/descriptor/WEB-INF/jbossws-cxf.xml	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/descriptor/WEB-INF/jbossws-cxf.xml	2011-06-21 09:46:03 UTC (rev 14594)
@@ -6,6 +6,11 @@
   
   <jaxws:endpoint id='TestService' address='http://@jboss.bind.address@:8080/jaxws-cxf-descriptor'
     implementor='org.jboss.test.ws.jaxws.cxf.descriptor.DescriptorEndpointImpl'>
+    
+    <jaxws:invoker>
+      <bean class='org.jboss.wsf.stack.cxf.InvokerJSE'/>
+    </jaxws:invoker>
+    
   </jaxws:endpoint>
   
 </beans>

Modified: stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/wsrm/basic-rpc/WEB-INF/jbossws-cxf.xml
===================================================================
--- stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/wsrm/basic-rpc/WEB-INF/jbossws-cxf.xml	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/cxf/wsrm/basic-rpc/WEB-INF/jbossws-cxf.xml	2011-06-21 09:46:03 UTC (rev 14594)
@@ -15,6 +15,9 @@
   </wsp:Policy>
   
   <jaxws:endpoint id='TestService' address='http://@jboss.bind.address@:8080/jaxws-cxf-wsrm-basic-rpc' implementor='org.jboss.test.ws.jaxws.cxf.wsrm.BasicRPCEndpointImpl'>
+    <jaxws:invoker>
+      <bean class='org.jboss.wsf.stack.cxf.InvokerJSE'/>
+    </jaxws:invoker>
     <jaxws:features>
       <p:policies>
         <wsp:PolicyReference URI="#RM" xmlns:wsp="http://www.w3.org/2006/07/ws-policy"/>
@@ -22,4 +25,4 @@
     </jaxws:features>
   </jaxws:endpoint>
   
-</beans>
+</beans>
\ No newline at end of file

Modified: stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/jmstransport/WEB-INF/jbossws-cxf.xml
===================================================================
--- stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/jmstransport/WEB-INF/jbossws-cxf.xml	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/jmstransport/WEB-INF/jbossws-cxf.xml	2011-06-21 09:46:03 UTC (rev 14594)
@@ -9,7 +9,11 @@
 
   <import resource="classpath:META-INF/cxf/cxf-extension-jms.xml"/>    
 	<jaxws:endpoint id='SOAPQueryService'
-		implementor='org.jboss.test.ws.jaxws.samples.jmstransport.OrganizationHttpEndpoint'>
+		implementor='org.jboss.test.ws.jaxws.samples.jmstransport.OrganizationHttpEndpoint'
+                >
+		<jaxws:invoker>
+			<bean class='org.jboss.wsf.stack.cxf.InvokerJSE'/>
+		</jaxws:invoker>
 	</jaxws:endpoint>
 
 	<jaxws:endpoint id='JMSQueryService'

Modified: stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/wsse/sign-encrypt/WEB-INF/jbossws-cxf.xml
===================================================================
--- stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/wsse/sign-encrypt/WEB-INF/jbossws-cxf.xml	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/wsse/sign-encrypt/WEB-INF/jbossws-cxf.xml	2011-06-21 09:46:03 UTC (rev 14594)
@@ -43,6 +43,9 @@
     id='ServiceImpl'
     address='http://@jboss.bind.address@:8080/jaxws-samples-wsse-sign-encrypt'
     implementor='org.jboss.test.ws.jaxws.samples.wsse.ServiceImpl'>
+    <jaxws:invoker>
+      <bean class='org.jboss.wsf.stack.cxf.InvokerJSE'/>
+    </jaxws:invoker>
     <jaxws:outInterceptors>
         <bean class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor"/>
         <ref bean="Sign_Response"/>

Modified: stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/wsseEJB/META-INF/jbossws-cxf.xml
===================================================================
--- stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/wsseEJB/META-INF/jbossws-cxf.xml	2011-06-21 06:13:28 UTC (rev 14593)
+++ stack/cxf/trunk/modules/testsuite/cxf-spring-tests/src/test/resources/jaxws/samples/wsseEJB/META-INF/jbossws-cxf.xml	2011-06-21 09:46:03 UTC (rev 14594)
@@ -26,6 +26,9 @@
     id='EjbEndpointImpl'
     address='http://@jboss.bind.address@:8080/jaxws-samples-wsseEJB/EjbEndpointService/EjbEndpoint'
     implementor='org.jboss.test.ws.jaxws.samples.wsseEJB.EjbEndpointImpl'>
+    <jaxws:invoker>
+      <bean class='org.jboss.wsf.stack.cxf.InvokerEJB3'/>
+    </jaxws:invoker>
     <jaxws:inInterceptors>
         <ref bean="SecurityContextIn"/>
         <bean class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor"/>



More information about the jbossws-commits mailing list