Author: thomas.diesler(a)jboss.com
Date: 2007-07-11 14:56:42 -0400 (Wed, 11 Jul 2007)
New Revision: 3851
Added:
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/WebAppDesciptorModifierImpl.java
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationHandler.java
Removed:
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/UnifiedMetaDataDeployment.java
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/WebAppDesciptorModifierImpl.java
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/AbstractInvocationHandler.java
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationExceptionHandler.java
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationHandler.java
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationExceptionHandler.java
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/UnwrapInvocationExceptionHandler.java
Modified:
branches/tdiesler/trunk/integration/jboss40/src/main/java/org/jboss/wsf/container/jboss40/InvocationHandlerEJB3.java
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerEJB21.java
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerEJB3.java
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerMDB21.java
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/AbstractDeployerHook.java
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/InvocationHandlerEJB21.java
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/InvocationHandlerEJB3.java
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/EagerInitializeDeploymentAspect.java
branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native50.deployer/META-INF/jbossws-deployer-beans.xml
branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native50.sar/META-INF/jbossws-beans.xml
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/EndpointHandlerDeploymentAspect.java
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationHandler.java
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationHandlerJSE.java
branches/tdiesler/trunk/integration/sunri/src/main/java/org/jboss/wsf/stack/sunri50/ModifyWebMetaDataDeploymentAspect.java
branches/tdiesler/trunk/integration/xfire/src/main/java/org/jboss/wsf/stack/xfire50/ModifyWebMetaDataDeploymentAspect.java
Log:
Modified:
branches/tdiesler/trunk/integration/jboss40/src/main/java/org/jboss/wsf/container/jboss40/InvocationHandlerEJB3.java
===================================================================
---
branches/tdiesler/trunk/integration/jboss40/src/main/java/org/jboss/wsf/container/jboss40/InvocationHandlerEJB3.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/jboss40/src/main/java/org/jboss/wsf/container/jboss40/InvocationHandlerEJB3.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -32,7 +32,7 @@
import org.jboss.ejb3.stateless.StatelessContainer;
import org.jboss.wsf.spi.deployment.Endpoint;
import org.jboss.wsf.spi.deployment.UnifiedDeploymentInfo;
-import org.jboss.wsf.spi.invocation.AbstractInvocationHandler;
+import org.jboss.wsf.spi.invocation.BasicInvocationHandler;
import org.jboss.wsf.spi.invocation.Invocation;
import org.jboss.wsf.spi.utils.ObjectNameFactory;
@@ -42,7 +42,7 @@
* @author Thomas.Diesler(a)jboss.org
* @since 25-Apr-2007
*/
-public class InvocationHandlerEJB3 extends AbstractInvocationHandler
+public class InvocationHandlerEJB3 extends BasicInvocationHandler
{
private ObjectName objectName;
Modified:
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerEJB21.java
===================================================================
---
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerEJB21.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerEJB21.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -42,7 +42,7 @@
import org.jboss.mx.util.MBeanServerLocator;
import org.jboss.wsf.spi.deployment.Endpoint;
import org.jboss.wsf.spi.deployment.UnifiedDeploymentInfo;
-import org.jboss.wsf.spi.invocation.AbstractInvocationHandler;
+import org.jboss.wsf.spi.invocation.BasicInvocationHandler;
import org.jboss.wsf.spi.invocation.HandlerCallback;
import org.jboss.wsf.spi.invocation.Invocation;
import org.jboss.wsf.spi.invocation.SecurityAdaptor;
@@ -57,7 +57,7 @@
* @author Thomas.Diesler(a)jboss.org
* @since 25-Apr-2007
*/
-public class InvocationHandlerEJB21 extends AbstractInvocationHandler
+public class InvocationHandlerEJB21 extends BasicInvocationHandler
{
// provide logging
private static final Logger log = Logger.getLogger(InvocationHandlerEJB21.class);
Modified:
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerEJB3.java
===================================================================
---
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerEJB3.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerEJB3.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -39,7 +39,7 @@
import org.jboss.injection.lang.reflect.BeanProperty;
import org.jboss.wsf.spi.deployment.Endpoint;
import org.jboss.wsf.spi.deployment.UnifiedDeploymentInfo;
-import org.jboss.wsf.spi.invocation.AbstractInvocationHandler;
+import org.jboss.wsf.spi.invocation.BasicInvocationHandler;
import org.jboss.wsf.spi.invocation.Invocation;
import org.jboss.wsf.spi.invocation.WebServiceContextEJB;
import org.jboss.wsf.spi.utils.ObjectNameFactory;
@@ -50,7 +50,7 @@
* @author Thomas.Diesler(a)jboss.org
* @since 25-Apr-2007
*/
-public class InvocationHandlerEJB3 extends AbstractInvocationHandler
+public class InvocationHandlerEJB3 extends BasicInvocationHandler
{
private ObjectName objectName;
Modified:
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerMDB21.java
===================================================================
---
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerMDB21.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/InvocationHandlerMDB21.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -27,7 +27,7 @@
import org.jboss.logging.Logger;
import org.jboss.wsf.spi.deployment.Endpoint;
-import org.jboss.wsf.spi.invocation.AbstractInvocationHandler;
+import org.jboss.wsf.spi.invocation.BasicInvocationHandler;
import org.jboss.wsf.spi.invocation.Invocation;
import org.jboss.wsf.spi.invocation.InvocationContext;
@@ -37,7 +37,7 @@
* @author Thomas.Diesler(a)jboss.org
* @since 25-Apr-2007
*/
-public class InvocationHandlerMDB21 extends AbstractInvocationHandler
+public class InvocationHandlerMDB21 extends BasicInvocationHandler
{
// provide logging
private static final Logger log = Logger.getLogger(InvocationHandlerMDB21.class);
Modified:
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/AbstractDeployerHook.java
===================================================================
---
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/AbstractDeployerHook.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/AbstractDeployerHook.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -23,6 +23,9 @@
import org.jboss.deployers.structure.spi.DeploymentUnit;
import org.jboss.logging.Logger;
+import org.jboss.wsf.spi.deployment.BasicDeployment;
+import org.jboss.wsf.spi.deployment.BasicEndpoint;
+import org.jboss.wsf.spi.deployment.BasicService;
import org.jboss.wsf.spi.deployment.DeploymentAspectManager;
import org.jboss.wsf.spi.deployment.Deployment;
import org.jboss.wsf.spi.deployment.Endpoint;
@@ -44,9 +47,9 @@
protected final Logger log = Logger.getLogger(getClass());
protected DeploymentAspectManager deploymentAspectManager;
- protected String deploymentClass;
- protected String serviceClass;
- protected String endpointClass;
+ protected String deploymentClass = BasicDeployment.class.getName();
+ protected String serviceClass = BasicService.class.getName();
+ protected String endpointClass = BasicEndpoint.class.getName();
public void setDeploymentAspectManager(DeploymentAspectManager deploymentManager)
{
Modified:
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/InvocationHandlerEJB21.java
===================================================================
---
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/InvocationHandlerEJB21.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/InvocationHandlerEJB21.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -44,7 +44,7 @@
import org.jboss.security.plugins.SecurityContextAssociation;
import org.jboss.wsf.spi.deployment.Endpoint;
import org.jboss.wsf.spi.deployment.UnifiedDeploymentInfo;
-import org.jboss.wsf.spi.invocation.AbstractInvocationHandler;
+import org.jboss.wsf.spi.invocation.BasicInvocationHandler;
import org.jboss.wsf.spi.invocation.HandlerCallback;
import org.jboss.wsf.spi.invocation.Invocation;
import org.jboss.wsf.spi.invocation.SecurityAdaptor;
@@ -59,7 +59,7 @@
* @author Thomas.Diesler(a)jboss.org
* @since 25-Apr-2007
*/
-public class InvocationHandlerEJB21 extends AbstractInvocationHandler
+public class InvocationHandlerEJB21 extends BasicInvocationHandler
{
// provide logging
private static final Logger log = Logger.getLogger(InvocationHandlerEJB21.class);
Modified:
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/InvocationHandlerEJB3.java
===================================================================
---
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/InvocationHandlerEJB3.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/InvocationHandlerEJB3.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -39,7 +39,7 @@
import org.jboss.injection.lang.reflect.BeanProperty;
import org.jboss.wsf.spi.deployment.Endpoint;
import org.jboss.wsf.spi.deployment.UnifiedDeploymentInfo;
-import org.jboss.wsf.spi.invocation.AbstractInvocationHandler;
+import org.jboss.wsf.spi.invocation.BasicInvocationHandler;
import org.jboss.wsf.spi.invocation.Invocation;
import org.jboss.wsf.spi.invocation.WebServiceContextEJB;
import org.jboss.wsf.spi.utils.ObjectNameFactory;
@@ -50,7 +50,7 @@
* @author Thomas.Diesler(a)jboss.org
* @since 25-Apr-2007
*/
-public class InvocationHandlerEJB3 extends AbstractInvocationHandler
+public class InvocationHandlerEJB3 extends BasicInvocationHandler
{
private ObjectName objectName;
Modified:
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/EagerInitializeDeploymentAspect.java
===================================================================
---
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/EagerInitializeDeploymentAspect.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/EagerInitializeDeploymentAspect.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -42,6 +42,7 @@
if (umd == null)
throw new IllegalStateException("Cannot obtain unified meta data");
+ umd.setClassLoader(dep.getClassLoader());
umd.eagerInitialize();
}
}
\ No newline at end of file
Deleted:
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/UnifiedMetaDataDeployment.java
===================================================================
---
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/UnifiedMetaDataDeployment.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/UnifiedMetaDataDeployment.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -1,82 +0,0 @@
-/*
- * ====================================================================
- *
- * The Apache Software License, Version 1.1
- *
- * Copyright (c) 1999 The Apache Software Foundation. All rights
- * reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * 3. The end-user documentation included with the redistribution, if
- * any, must include the following acknowlegement:
- * "This product includes software developed by the
- * Apache Software Foundation (
http://www.apache.org/)."
- * Alternately, this acknowlegement may appear in the software itself,
- * if and wherever such third-party acknowlegements normally appear.
- *
- * 4. The names "The Jakarta Project", "Tomcat", and "Apache
Software
- * Foundation" must not be used to endorse or promote products derived
- * from this software without prior written permission. For written
- * permission, please contact apache(a)apache.org.
- *
- * 5. Products derived from this software may not be called "Apache"
- * nor may "Apache" appear in their names without prior written
- * permission of the Apache Group.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Apache Software Foundation. For more
- * information on the Apache Software Foundation, please see
- * <
http://www.apache.org/>.
- */
-package org.jboss.wsf.stack.jbws;
-
-//$Id$
-
-import org.jboss.ws.metadata.umdm.UnifiedMetaData;
-import org.jboss.wsf.spi.deployment.BasicDeployment;
-
-/**
- * A deployment that injects the ClassLoader into the UnifiedMetaDataModel
- *
- * @author Thomas.Diesler(a)jboss.com
- * @since 20-Apr-2007
- */
-public class UnifiedMetaDataDeployment extends BasicDeployment
-{
- @Override
- public void setClassLoader(ClassLoader classLoader)
- {
- super.setClassLoader(classLoader);
-
- UnifiedMetaData umd = getContext().getAttachment(UnifiedMetaData.class);
- if (umd != null)
- {
- umd.setClassLoader(classLoader);
- }
- }
-}
Deleted:
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/WebAppDesciptorModifierImpl.java
===================================================================
---
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/WebAppDesciptorModifierImpl.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/WebAppDesciptorModifierImpl.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -1,152 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt 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.jbws;
-
-import java.util.Iterator;
-
-import org.dom4j.Document;
-import org.dom4j.Element;
-import org.jboss.logging.Logger;
-import org.jboss.wsf.spi.deployment.Deployment;
-import org.jboss.wsf.spi.deployment.Endpoint;
-import org.jboss.wsf.spi.deployment.WebAppDesciptorModifier;
-
-/**
- * Modifies web.xml for jbossws
- *
- * @author Thomas.Diesler(a)jboss.org
- * @since 19-May-2006
- */
-public class WebAppDesciptorModifierImpl implements WebAppDesciptorModifier
-{
- // logging support
- private static Logger log = Logger.getLogger(WebAppDesciptorModifierImpl.class);
-
- // The configured service endpoint servlet
- private String servletClass;
-
- public String getServletClass()
- {
- return servletClass;
- }
-
- public void setServletClass(String servletClass)
- {
- this.servletClass = servletClass;
- }
-
- public RewriteResults modifyDescriptor(Deployment dep, Document webXml) throws
ClassNotFoundException
- {
- RewriteResults results = new RewriteResults();
-
- Element root = webXml.getRootElement();
- for (Iterator it = root.elementIterator("servlet"); it.hasNext();)
- {
- Element servlet = (Element)it.next();
- String linkName = servlet.element("servlet-name").getTextTrim();
-
- // find the servlet-class
- Element classElement = servlet.element("servlet-class");
-
- // JSP
- if (classElement == null)
- continue;
-
- String orgServletClassName = classElement.getTextTrim();
-
- // Get the servlet class
- Class orgServletClass = null;
- try
- {
- ClassLoader loader = dep.getClassLoader();
- orgServletClass = loader.loadClass(orgServletClassName);
- }
- catch (ClassNotFoundException ex)
- {
- log.warn("Cannot load servlet class: " + orgServletClassName);
- }
-
- String targetBeanName = null;
-
- // Nothing to do if we have an <init-param>
- if (isAlreadyModified(servlet))
- {
- for (Iterator itParam = servlet.elementIterator("init-param");
itParam.hasNext();)
- {
- Element elParam = (Element)itParam.next();
- String paramName = elParam.element("param-name").getTextTrim();
- String paramValue =
elParam.element("param-value").getTextTrim();
- if (Endpoint.SEPID_DOMAIN_ENDPOINT.equals(paramName))
- {
- targetBeanName = paramValue;
- }
- }
- }
- else
- {
- // Check if it is a real servlet that we can ignore
- if (orgServletClass != null &&
javax.servlet.Servlet.class.isAssignableFrom(orgServletClass))
- {
- log.info("Ignore servlet: " + orgServletClassName);
- continue;
- }
- else if (orgServletClassName.endsWith("Servlet"))
- {
- log.info("Ignore <servlet-class> that ends with
'Servlet': " + orgServletClassName);
- continue;
- }
-
- classElement.setText(servletClass);
-
- // add additional init params
- if (orgServletClassName.equals(servletClass) == false)
- {
- targetBeanName = orgServletClassName;
- Element paramElement = servlet.addElement("init-param");
-
paramElement.addElement("param-name").addText(Endpoint.SEPID_DOMAIN_ENDPOINT);
- paramElement.addElement("param-value").addText(targetBeanName);
- }
- }
-
- if (targetBeanName == null)
- throw new IllegalStateException("Cannot obtain service endpoint bean
for: " + linkName);
-
- // remember the target bean name
- results.sepTargetMap.put(linkName, targetBeanName);
- }
-
- return results;
- }
-
- // Return true if the web.xml is already modified
- private boolean isAlreadyModified(Element servlet)
- {
- for (Iterator it = servlet.elementIterator("init-param"); it.hasNext();)
- {
- Element elParam = (Element)it.next();
- String paramName = elParam.element("param-name").getTextTrim();
- if (Endpoint.SEPID_DOMAIN_ENDPOINT.equals(paramName))
- return true;
- }
- return false;
- }
-}
\ No newline at end of file
Modified:
branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native50.deployer/META-INF/jbossws-deployer-beans.xml
===================================================================
---
branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native50.deployer/META-INF/jbossws-deployer-beans.xml 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native50.deployer/META-INF/jbossws-deployer-beans.xml 2007-07-11
18:56:42 UTC (rev 3851)
@@ -84,8 +84,6 @@
Register DeployerHooks with JBoss deployers
-->
<bean name="WSDeployerHook_JAXRPC_JSE"
class="org.jboss.wsf.container.jboss50.JAXRPCDeployerHookJSE">
- <property
name="deploymentClass">org.jboss.wsf.stack.jbws.UnifiedMetaDataDeployment</property>
- <property
name="endpointClass">org.jboss.wsf.spi.deployment.BasicEndpoint</property>
<property name="deploymentAspectManager"><inject
bean="WSDeploymentAspectManagerJSE"/></property>
<install bean="WebServiceDeployerJSE"
method="addDeployerHook">
<parameter>
@@ -100,8 +98,6 @@
<depends>WebServiceDeployerJSE</depends>
</bean>
<bean name="WSDeployerHook_JAXRPC_EJB21"
class="org.jboss.wsf.container.jboss50.JAXRPCDeployerHookEJB21">
- <property
name="deploymentClass">org.jboss.wsf.stack.jbws.UnifiedMetaDataDeployment</property>
- <property
name="endpointClass">org.jboss.wsf.spi.deployment.BasicEndpoint</property>
<property name="deploymentAspectManager"><inject
bean="WSDeploymentAspectManagerEJB"/></property>
<install bean="WebServiceDeployerEJB"
method="addDeployerHook">
<parameter>
@@ -116,8 +112,6 @@
<depends>WebServiceDeployerEJB</depends>
</bean>
<bean name="WSDeployerHook_JAXWS_JSE"
class="org.jboss.wsf.container.jboss50.JAXWSDeployerHookJSE">
- <property
name="deploymentClass">org.jboss.wsf.stack.jbws.UnifiedMetaDataDeployment</property>
- <property
name="endpointClass">org.jboss.wsf.spi.deployment.BasicEndpoint</property>
<property name="deploymentAspectManager"><inject
bean="WSDeploymentAspectManagerJSE"/></property>
<install bean="WebServiceDeployerJSE"
method="addDeployerHook">
<parameter>
@@ -132,8 +126,6 @@
<depends>WebServiceDeployerJSE</depends>
</bean>
<bean name="WSDeployerHook_JAXWS_EJB3"
class="org.jboss.wsf.container.jboss50.JAXWSDeployerHookEJB3">
- <property
name="deploymentClass">org.jboss.wsf.stack.jbws.UnifiedMetaDataDeployment</property>
- <property
name="endpointClass">org.jboss.wsf.spi.deployment.BasicEndpoint</property>
<property name="deploymentAspectManager"><inject
bean="WSDeploymentAspectManagerEJB"/></property>
<install bean="WebServiceDeployerEJB"
method="addDeployerHook">
<parameter>
@@ -203,18 +195,14 @@
</bean>
<bean name="WSEndpointHandlerDeploymentAspect"
class="org.jboss.wsf.spi.deployment.EndpointHandlerDeploymentAspect">
- <property name="provides">EndpointHandler</property>
- <property
name="requestHandler">org.jboss.wsf.stack.jbws.RequestHandlerImpl</property>
- <property
name="lifecycleHandler">org.jboss.wsf.stack.jbws.LifecycleHandlerImpl</property>
+ <property name="provides">ContainerEndpointHandler</property>
<property name="invocationHandler">
<map keyClass="java.lang.String"
valueClass="java.lang.String">
-
<entry><key>JAXRPC_JSE</key><value>org.jboss.wsf.stack.jbws.ServiceLifecycleInvocationHandler</value></entry>
<entry><key>JAXRPC_EJB21</key><value>org.jboss.wsf.container.jboss50.InvocationHandlerEJB21</value></entry>
<entry><key>JAXWS_JSE</key><value>org.jboss.wsf.spi.invocation.InvocationHandlerJSE</value></entry>
<entry><key>JAXWS_EJB3</key><value>org.jboss.wsf.container.jboss50.InvocationHandlerEJB3</value></entry>
</map>
</property>
- <property
name="invocationExceptionHandler">org.jboss.wsf.spi.invocation.UnwrapInvocationExceptionHandler</property>
<install bean="WSMainDeploymentAspectManager"
method="addDeploymentAspect">
<parameter>
<this/>
@@ -251,7 +239,7 @@
<bean name="WSEndpointRegistryDeploymentAspect"
class="org.jboss.wsf.spi.deployment.EndpointRegistryDeploymentAspect">
<property name="provides">RegisteredEndpoint</property>
- <property
name="requires">EndpointName,EndpointHandler,InitializedMetaDataModel</property>
+ <property
name="requires">EndpointName,StackEndpointHandler,InitializedMetaDataModel</property>
<install bean="WSMainDeploymentAspectManager"
method="addDeploymentAspect">
<parameter>
<this/>
@@ -325,7 +313,7 @@
<bean name="WSEndpointMetrics"
class="org.jboss.wsf.spi.management.BasicEndpointMetrics"/>
<bean name="WSSecurityHandlerEJB21"
class="org.jboss.wsf.container.jboss50.SecurityHandlerEJB21"/>
<bean name="WSSecurityHandlerEJB3"
class="org.jboss.wsf.container.jboss50.SecurityHandlerEJB3"/>
- <bean name="WSWebAppDesciptorModifier"
class="org.jboss.wsf.stack.jbws.WebAppDesciptorModifierImpl">
+ <bean name="WSWebAppDesciptorModifier"
class="org.jboss.wsf.spi.deployment.WebAppDesciptorModifierImpl">
<property
name="servletClass">org.jboss.wsf.stack.jbws.ServiceEndpointServlet</property>
</bean>
<bean name="WSWebXMLRewriter"
class="org.jboss.wsf.spi.deployment.WebXMLRewriter">
Modified:
branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native50.sar/META-INF/jbossws-beans.xml
===================================================================
---
branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native50.sar/META-INF/jbossws-beans.xml 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native50.sar/META-INF/jbossws-beans.xml 2007-07-11
18:56:42 UTC (rev 3851)
@@ -39,7 +39,7 @@
<!--
The stack specific deployment aspects
-->
- <bean name="WSEagerInitializeDeploymentAspect"
class="org.jboss.wsf.stack.jbws.EagerInitializeDeploymentAspect">
+ <bean name="WSNativeEagerInitializeDeploymentAspect"
class="org.jboss.wsf.stack.jbws.EagerInitializeDeploymentAspect">
<property name="provides">InitializedMetaDataModel</property>
<property name="requires">AssociatedClassLoader</property>
<install bean="WSMainDeploymentAspectManager"
method="addDeploymentAspect">
@@ -49,7 +49,16 @@
</install>
</bean>
- <bean name="WSEventingDeploymentAspect"
class="org.jboss.wsf.stack.jbws.EventingDeploymentAspect">
+ <bean name="WSNativeEndpointHandlerDeploymentAspect"
class="org.jboss.wsf.spi.deployment.EndpointHandlerDeploymentAspect">
+ <property name="requires">ContainerEndpointHandler</property>
+ <property name="provides">StackEndpointHandler</property>
+ <property
name="requestHandler">org.jboss.wsf.stack.jbws.RequestHandlerImpl</property>
+ <property
name="lifecycleHandler">org.jboss.wsf.stack.jbws.LifecycleHandlerImpl</property>
+ <property name="invocationHandler">
+ <map keyClass="java.lang.String"
valueClass="java.lang.String">
+
<entry><key>JAXRPC_JSE</key><value>org.jboss.wsf.stack.jbws.ServiceLifecycleInvocationHandler</value></entry>
+ </map>
+ </property>
<install bean="WSMainDeploymentAspectManager"
method="addDeploymentAspect">
<parameter>
<this/>
@@ -57,7 +66,15 @@
</install>
</bean>
- <bean name="WSPublishContractDeploymentAspect"
class="org.jboss.wsf.stack.jbws.PublishContractDeploymentAspect">
+ <bean name="WSNativeEventingDeploymentAspect"
class="org.jboss.wsf.stack.jbws.EventingDeploymentAspect">
+ <install bean="WSMainDeploymentAspectManager"
method="addDeploymentAspect">
+ <parameter>
+ <this/>
+ </parameter>
+ </install>
+ </bean>
+
+ <bean name="WSNativePublishContractDeploymentAspect"
class="org.jboss.wsf.stack.jbws.PublishContractDeploymentAspect">
<property name="provides">PublishedContract</property>
<install bean="WSMainDeploymentAspectManager"
method="addDeploymentAspect">
<parameter>
@@ -66,7 +83,7 @@
</install>
</bean>
- <bean name="WSServiceEndpointInvokerDeploymentAspect"
class="org.jboss.wsf.stack.jbws.ServiceEndpointInvokerDeploymentAspect">
+ <bean name="WSNativeServiceEndpointInvokerDeploymentAspect"
class="org.jboss.wsf.stack.jbws.ServiceEndpointInvokerDeploymentAspect">
<install bean="WSMainDeploymentAspectManager"
method="addDeploymentAspect">
<parameter>
<this/>
@@ -74,7 +91,7 @@
</install>
</bean>
- <bean name="WSUnifiedMetaDataAssociationDeploymentAspect"
class="org.jboss.wsf.stack.jbws.UnifiedMetaDataAssociationDeploymentAspect">
+ <bean name="WSNativeUnifiedMetaDataAssociationDeploymentAspect"
class="org.jboss.wsf.stack.jbws.UnifiedMetaDataAssociationDeploymentAspect">
<property name="requires">UnifiedMetaDataModel</property>
<install bean="WSDeploymentAspectManagerJSE"
method="addDeploymentAspect">
<parameter>
@@ -88,7 +105,7 @@
</install>
</bean>
- <bean name="WSUnifiedMetaDataDeploymentAspect"
class="org.jboss.wsf.stack.jbws.UnifiedMetaDataDeploymentAspect">
+ <bean name="WSNativeUnifiedMetaDataDeploymentAspect"
class="org.jboss.wsf.stack.jbws.UnifiedMetaDataDeploymentAspect">
<property name="provides">UnifiedMetaDataModel</property>
<property name="requires">ContainerMetaData</property>
<install bean="WSDeploymentAspectManagerJSE"
method="addDeploymentAspect">
@@ -103,6 +120,4 @@
</install>
</bean>
- <!-- Deployer helper beans -->
-
</deployment>
Modified:
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/EndpointHandlerDeploymentAspect.java
===================================================================
---
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/EndpointHandlerDeploymentAspect.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/EndpointHandlerDeploymentAspect.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -23,15 +23,15 @@
//$Id: EndpointHandlerDeployer.java 3828 2007-07-09 16:56:38Z heiko.braun(a)jboss.com $
-import org.jboss.wsf.spi.invocation.InvocationExceptionHandler;
+import java.util.HashMap;
+import java.util.Map;
+
import org.jboss.wsf.spi.invocation.InvocationHandler;
import org.jboss.wsf.spi.invocation.RequestHandler;
import org.jboss.wsf.spi.metadata.j2ee.UnifiedApplicationMetaData;
import org.jboss.wsf.spi.metadata.j2ee.UnifiedBeanMetaData;
import org.jboss.wsf.spi.metadata.j2ee.UnifiedMessageDrivenMetaData;
-import java.util.Map;
-
/**
* A deployer that assigns the handlers to the Endpoint
*
@@ -43,9 +43,8 @@
private String requestHandler;
private String lifecycleHandler;
- private Map<String, String> invocationHandler;
- private String invocationExceptionHandler;
-
+ private Map<String, String> invocationHandlerMap = new HashMap<String,
String>();
+
public void setLifecycleHandler(String handler)
{
this.lifecycleHandler = handler;
@@ -58,22 +57,26 @@
public void setInvocationHandler(Map<String, String> handlers)
{
- this.invocationHandler = handlers;
+ this.invocationHandlerMap = handlers;
}
- public void setInvocationExceptionHandler(String handler)
- {
- this.invocationExceptionHandler = handler;
- }
-
@Override
public void create(Deployment dep)
{
for (Endpoint ep : dep.getService().getEndpoints())
{
- ep.setRequestHandler(getRequestHandler(dep));
- ep.setLifecycleHandler(getLifecycleHandler(dep));
- ep.setInvocationHandler(getInvocationHandler(ep));
+ if (requestHandler != null)
+ ep.setRequestHandler(getRequestHandler(dep));
+
+ if (lifecycleHandler != null)
+ ep.setLifecycleHandler(getLifecycleHandler(dep));
+
+ if (invocationHandlerMap != null)
+ {
+ InvocationHandler invocationHandler = getInvocationHandler(ep);
+ if (invocationHandler != null)
+ ep.setInvocationHandler(invocationHandler);
+ }
}
}
@@ -119,30 +122,20 @@
}
}
- String className = invocationHandler.get(key);
- if (className == null)
- throw new IllegalStateException("Cannot obtain invocation handler for:
" + key);
-
- InvocationExceptionHandler exceptionHandler;
- try
+ InvocationHandler invocationHandler = null;
+ String className = invocationHandlerMap.get(key);
+ if (className != null)
{
- Class<?> handlerClass =
dep.getClassLoader().loadClass(invocationExceptionHandler);
- exceptionHandler = (InvocationExceptionHandler)handlerClass.newInstance();
+ try
+ {
+ Class<?> handlerClass = dep.getClassLoader().loadClass(className);
+ invocationHandler = (InvocationHandler)handlerClass.newInstance();
+ }
+ catch (Exception e)
+ {
+ throw new IllegalStateException("Cannot load invocation handler: "
+ className);
+ }
}
- catch (Exception e)
- {
- throw new IllegalStateException("Cannot load invocation exception handler:
" + invocationExceptionHandler);
- }
- try
- {
- Class<?> handlerClass = dep.getClassLoader().loadClass(className);
- InvocationHandler invocationHandlerInstance =
(InvocationHandler)handlerClass.newInstance();
- invocationHandlerInstance.setExceptionHandler(exceptionHandler);
- return invocationHandlerInstance;
- }
- catch (Exception e)
- {
- throw new IllegalStateException("Cannot load invocation handler: " +
className);
- }
+ return invocationHandler;
}
}
\ No newline at end of file
Copied:
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/WebAppDesciptorModifierImpl.java
(from rev 3846,
branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/WebAppDesciptorModifierImpl.java)
===================================================================
---
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/WebAppDesciptorModifierImpl.java
(rev 0)
+++
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/WebAppDesciptorModifierImpl.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -0,0 +1,149 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt 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.spi.deployment;
+
+import java.util.Iterator;
+
+import org.dom4j.Document;
+import org.dom4j.Element;
+import org.jboss.logging.Logger;
+
+/**
+ * Modifies web.xml for jbossws
+ *
+ * @author Thomas.Diesler(a)jboss.org
+ * @since 19-May-2006
+ */
+public class WebAppDesciptorModifierImpl implements WebAppDesciptorModifier
+{
+ // logging support
+ private static Logger log = Logger.getLogger(WebAppDesciptorModifierImpl.class);
+
+ // The configured service endpoint servlet
+ private String servletClass;
+
+ public String getServletClass()
+ {
+ return servletClass;
+ }
+
+ public void setServletClass(String servletClass)
+ {
+ this.servletClass = servletClass;
+ }
+
+ public RewriteResults modifyDescriptor(Deployment dep, Document webXml) throws
ClassNotFoundException
+ {
+ RewriteResults results = new RewriteResults();
+
+ Element root = webXml.getRootElement();
+ for (Iterator it = root.elementIterator("servlet"); it.hasNext();)
+ {
+ Element servlet = (Element)it.next();
+ String linkName = servlet.element("servlet-name").getTextTrim();
+
+ // find the servlet-class
+ Element classElement = servlet.element("servlet-class");
+
+ // JSP
+ if (classElement == null)
+ continue;
+
+ String orgServletClassName = classElement.getTextTrim();
+
+ // Get the servlet class
+ Class orgServletClass = null;
+ try
+ {
+ ClassLoader loader = dep.getClassLoader();
+ orgServletClass = loader.loadClass(orgServletClassName);
+ }
+ catch (ClassNotFoundException ex)
+ {
+ log.warn("Cannot load servlet class: " + orgServletClassName);
+ }
+
+ String targetBeanName = null;
+
+ // Nothing to do if we have an <init-param>
+ if (isAlreadyModified(servlet))
+ {
+ for (Iterator itParam = servlet.elementIterator("init-param");
itParam.hasNext();)
+ {
+ Element elParam = (Element)itParam.next();
+ String paramName = elParam.element("param-name").getTextTrim();
+ String paramValue =
elParam.element("param-value").getTextTrim();
+ if (Endpoint.SEPID_DOMAIN_ENDPOINT.equals(paramName))
+ {
+ targetBeanName = paramValue;
+ }
+ }
+ }
+ else
+ {
+ // Check if it is a real servlet that we can ignore
+ if (orgServletClass != null &&
javax.servlet.Servlet.class.isAssignableFrom(orgServletClass))
+ {
+ log.info("Ignore servlet: " + orgServletClassName);
+ continue;
+ }
+ else if (orgServletClassName.endsWith("Servlet"))
+ {
+ log.info("Ignore <servlet-class> that ends with
'Servlet': " + orgServletClassName);
+ continue;
+ }
+
+ classElement.setText(servletClass);
+
+ // add additional init params
+ if (orgServletClassName.equals(servletClass) == false)
+ {
+ targetBeanName = orgServletClassName;
+ Element paramElement = servlet.addElement("init-param");
+
paramElement.addElement("param-name").addText(Endpoint.SEPID_DOMAIN_ENDPOINT);
+ paramElement.addElement("param-value").addText(targetBeanName);
+ }
+ }
+
+ if (targetBeanName == null)
+ throw new IllegalStateException("Cannot obtain service endpoint bean
for: " + linkName);
+
+ // remember the target bean name
+ results.sepTargetMap.put(linkName, targetBeanName);
+ }
+
+ return results;
+ }
+
+ // Return true if the web.xml is already modified
+ private boolean isAlreadyModified(Element servlet)
+ {
+ for (Iterator it = servlet.elementIterator("init-param"); it.hasNext();)
+ {
+ Element elParam = (Element)it.next();
+ String paramName = elParam.element("param-name").getTextTrim();
+ if (Endpoint.SEPID_DOMAIN_ENDPOINT.equals(paramName))
+ return true;
+ }
+ return false;
+ }
+}
\ No newline at end of file
Deleted:
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/AbstractInvocationHandler.java
===================================================================
---
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/AbstractInvocationHandler.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/AbstractInvocationHandler.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -1,99 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt 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.spi.invocation;
-
-// $Id$
-
-import java.lang.reflect.Method;
-
-import org.jboss.logging.Logger;
-import org.jboss.wsf.spi.deployment.Endpoint;
-import org.jboss.wsf.spi.utils.JavaUtils;
-
-/**
- * Handles invocations on endpoints.
- *
- * @author Thomas.Diesler(a)jboss.org
- * @since 25-Apr-2007
- */
-public abstract class AbstractInvocationHandler extends BasicInvocationHandler
-{
- // provide logging
- private static final Logger log = Logger.getLogger(AbstractInvocationHandler.class);
-
- protected InvocationExceptionHandler exceptionHandler;
-
- protected Method getImplMethod(Class implClass, Method seiMethod) throws
ClassNotFoundException, NoSuchMethodException
- {
- String methodName = seiMethod.getName();
- Class[] paramTypes = seiMethod.getParameterTypes();
- for (int i = 0; i < paramTypes.length; i++)
- {
- Class paramType = paramTypes[i];
- if (JavaUtils.isPrimitive(paramType) == false)
- {
- String paramTypeName = paramType.getName();
- paramType = JavaUtils.loadJavaType(paramTypeName);
- paramTypes[i] = paramType;
- }
- }
-
- Method implMethod = implClass.getMethod(methodName, paramTypes);
- return implMethod;
- }
-
- protected final void handleInvocationException(Throwable th) throws Exception
- {
- //delegate to invocation exception handler
- exceptionHandler.handleInvocationException(th);
- }
-
- public void create(Endpoint ep)
- {
- log.debug("Create: " + ep.getName());
- }
-
- public void start(Endpoint ep)
- {
- log.debug("Start: " + ep.getName());
- }
-
- public void stop(Endpoint ep)
- {
- log.debug("Stop: " + ep.getName());
- }
-
- public void destroy(Endpoint ep)
- {
- log.debug("Destroy: " + ep.getName());
- }
-
- public InvocationExceptionHandler getExceptionHandler()
- {
- return exceptionHandler;
- }
-
- public void setExceptionHandler(InvocationExceptionHandler exceptionHandler)
- {
- this.exceptionHandler = exceptionHandler;
- }
-}
Deleted:
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationExceptionHandler.java
===================================================================
---
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationExceptionHandler.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationExceptionHandler.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -1,64 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt 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.spi.invocation;
-
-import java.lang.reflect.UndeclaredThrowableException;
-
-import javax.management.MBeanException;
-
-/**
- * A basic invocation exception handler that simply rethrows Throwable as Exception
- *
- * @author Alessio Soldano, <alessio.soldano(a)javalinux.it>
- * @since 17-Jun-2007
- *
- */
-public class BasicInvocationExceptionHandler implements InvocationExceptionHandler
-{
-
- public void handleInvocationException(Throwable th) throws Exception
- {
- if (th instanceof MBeanException)
- {
- throw ((MBeanException)th).getTargetException();
- }
-
- handleInvocationThrowable(th);
- }
-
- protected void handleInvocationThrowable(Throwable th) throws Exception
- {
- if (th instanceof Exception)
- {
- throw (Exception)th;
- }
- else if (th instanceof Error)
- {
- throw (Error)th;
- }
- else
- {
- throw new UndeclaredThrowableException(th);
- }
- }
-
-}
Deleted:
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationHandler.java
===================================================================
---
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationHandler.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationHandler.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -1,57 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt 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.spi.invocation;
-
-//$Id$
-
-import org.jboss.wsf.spi.deployment.Endpoint;
-
-/**
- * A basic endpoint invocation handler.
- *
- * @author Thomas.Diesler(a)jboss.com
- * @since 20-Apr-2007
- */
-public abstract class BasicInvocationHandler implements InvocationHandler
-{
- public Invocation createInvocation()
- {
- return new BasicEndpointInvocation();
- }
-
- public void create(Endpoint ep)
- {
- }
-
- public void start(Endpoint ep)
- {
- }
-
- public void stop(Endpoint ep)
- {
- }
-
- public void destroy(Endpoint ep)
- {
- }
-
-}
Copied:
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationHandler.java
(from rev 3846,
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/AbstractInvocationHandler.java)
===================================================================
---
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationHandler.java
(rev 0)
+++
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/BasicInvocationHandler.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -0,0 +1,117 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt 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.spi.invocation;
+
+// $Id$
+
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.lang.reflect.UndeclaredThrowableException;
+
+import javax.management.MBeanException;
+
+import org.jboss.logging.Logger;
+import org.jboss.wsf.spi.deployment.Endpoint;
+import org.jboss.wsf.spi.utils.JavaUtils;
+
+/**
+ * Handles invocations on endpoints.
+ *
+ * @author Thomas.Diesler(a)jboss.org
+ * @since 25-Apr-2007
+ */
+public abstract class BasicInvocationHandler implements InvocationHandler
+{
+ // provide logging
+ private static final Logger log = Logger.getLogger(BasicInvocationHandler.class);
+
+ public Invocation createInvocation()
+ {
+ return new BasicEndpointInvocation();
+ }
+
+ protected Method getImplMethod(Class implClass, Method seiMethod) throws
ClassNotFoundException, NoSuchMethodException
+ {
+ String methodName = seiMethod.getName();
+ Class[] paramTypes = seiMethod.getParameterTypes();
+ for (int i = 0; i < paramTypes.length; i++)
+ {
+ Class paramType = paramTypes[i];
+ if (JavaUtils.isPrimitive(paramType) == false)
+ {
+ String paramTypeName = paramType.getName();
+ paramType = JavaUtils.loadJavaType(paramTypeName);
+ paramTypes[i] = paramType;
+ }
+ }
+
+ Method implMethod = implClass.getMethod(methodName, paramTypes);
+ return implMethod;
+ }
+
+ public void create(Endpoint ep)
+ {
+ log.debug("Create: " + ep.getName());
+ }
+
+ public void start(Endpoint ep)
+ {
+ log.debug("Start: " + ep.getName());
+ }
+
+ public void stop(Endpoint ep)
+ {
+ log.debug("Stop: " + ep.getName());
+ }
+
+ public void destroy(Endpoint ep)
+ {
+ log.debug("Destroy: " + ep.getName());
+ }
+
+ protected void handleInvocationException(Throwable th) throws Exception
+ {
+ if (th instanceof MBeanException)
+ {
+ throw ((MBeanException)th).getTargetException();
+ }
+
+ if (th instanceof InvocationTargetException)
+ {
+ // Unwrap the throwable raised by the service endpoint implementation
+ Throwable targetEx = ((InvocationTargetException)th).getTargetException();
+ handleInvocationException(targetEx);
+ }
+
+ if (th instanceof Exception)
+ {
+ throw (Exception)th;
+ }
+
+ if (th instanceof Error)
+ {
+ throw (Error)th;
+ }
+
+ throw new UndeclaredThrowableException(th);
+ }
+}
Deleted:
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationExceptionHandler.java
===================================================================
---
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationExceptionHandler.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationExceptionHandler.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -1,35 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt 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.spi.invocation;
-
-/**
- * A general invocation exception handler
- *
- * @author Alessio Soldano, <alessio.soldano(a)javalinux.it>
- * @since 17-Jun-2007
- *
- */
-public interface InvocationExceptionHandler
-{
- public void handleInvocationException(Throwable th) throws Exception;
-
-}
Modified:
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationHandler.java
===================================================================
---
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationHandler.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationHandler.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -50,7 +50,4 @@
/** Destroy the invocation handler */
void destroy(Endpoint ep);
-
- /** Set the handler to be used to deal with invocation exceptions **/
- void setExceptionHandler(InvocationExceptionHandler exceptionHandler);
}
Modified:
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationHandlerJSE.java
===================================================================
---
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationHandlerJSE.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/InvocationHandlerJSE.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -35,7 +35,7 @@
* @author Thomas.Diesler(a)jboss.org
* @since 25-Apr-2007
*/
-public class InvocationHandlerJSE extends AbstractInvocationHandler
+public class InvocationHandlerJSE extends BasicInvocationHandler
{
protected Object getTargetBean(Endpoint ep, Invocation epInv)
{
Deleted:
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/UnwrapInvocationExceptionHandler.java
===================================================================
---
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/UnwrapInvocationExceptionHandler.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/invocation/UnwrapInvocationExceptionHandler.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -1,55 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt 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.spi.invocation;
-
-import java.lang.reflect.InvocationTargetException;
-
-import javax.management.MBeanException;
-
-/**
- * An invocation exception handler that unwraps InvocationExceptions
- *
- * @author Alessio Soldano, <alessio.soldano(a)javalinux.it>
- * @since 17-Jun-2007
- *
- */
-public class UnwrapInvocationExceptionHandler extends BasicInvocationExceptionHandler
-{
-
- public void handleInvocationException(Throwable th) throws Exception
- {
- if (th instanceof InvocationTargetException)
- {
- // unwrap the throwable raised by the service endpoint implementation
- Throwable targetEx = ((InvocationTargetException)th).getTargetException();
- handleInvocationThrowable(targetEx);
- }
-
- if (th instanceof MBeanException)
- {
- throw ((MBeanException)th).getTargetException();
- }
-
- handleInvocationThrowable(th);
- }
-
-}
Modified:
branches/tdiesler/trunk/integration/sunri/src/main/java/org/jboss/wsf/stack/sunri50/ModifyWebMetaDataDeploymentAspect.java
===================================================================
---
branches/tdiesler/trunk/integration/sunri/src/main/java/org/jboss/wsf/stack/sunri50/ModifyWebMetaDataDeploymentAspect.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/sunri/src/main/java/org/jboss/wsf/stack/sunri50/ModifyWebMetaDataDeploymentAspect.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -37,7 +37,7 @@
* @author Thomas.Diesler(a)jboss.org
* @since 25-Apr-2007
*/
-public class ModifyWebMetaDataDeploymentAspect extends
org.jboss.wsf.container.jboss50.ModifyWebMetaDataDeploymentDeploymentAspect
+public class ModifyWebMetaDataDeploymentAspect extends
org.jboss.wsf.container.jboss50.ModifyWebMetaDataDeploymentAspect
{
private String listenerClass;
Modified:
branches/tdiesler/trunk/integration/xfire/src/main/java/org/jboss/wsf/stack/xfire50/ModifyWebMetaDataDeploymentAspect.java
===================================================================
---
branches/tdiesler/trunk/integration/xfire/src/main/java/org/jboss/wsf/stack/xfire50/ModifyWebMetaDataDeploymentAspect.java 2007-07-11
16:30:29 UTC (rev 3850)
+++
branches/tdiesler/trunk/integration/xfire/src/main/java/org/jboss/wsf/stack/xfire50/ModifyWebMetaDataDeploymentAspect.java 2007-07-11
18:56:42 UTC (rev 3851)
@@ -36,7 +36,7 @@
* @author Thomas.Diesler(a)jboss.org
* @since 21-Mai-2007
*/
-public class ModifyWebMetaDataDeploymentAspect extends
org.jboss.wsf.container.jboss50.ModifyWebMetaDataDeploymentDeploymentAspect
+public class ModifyWebMetaDataDeploymentAspect extends
org.jboss.wsf.container.jboss50.ModifyWebMetaDataDeploymentAspect
{
@Override
public void create(Deployment dep)