[jboss-svn-commits] JBossWS SVN: r1007 - in branches/tdiesler/trunk/src: main/java/org/jboss/ws/deployment main/java/org/jboss/ws/jaxrpc test/ant test/java/org/jboss/test/ws/jaxws/jsr181/handlerchain test/resources/jaxws/jsr181/handlerchain test/resources/jaxws/jsr181/handlerchain/WEB-INF
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Sep 19 09:07:41 EDT 2006
Author: thomas.diesler at jboss.com
Date: 2006-09-19 09:07:28 -0400 (Tue, 19 Sep 2006)
New Revision: 1007
Added:
branches/tdiesler/trunk/src/test/resources/jaxws/jsr181/handlerchain/jaxws-handlers.xml
Removed:
branches/tdiesler/trunk/src/test/resources/jaxws/jsr181/handlerchain/WEB-INF/jaxws-handlers.xml
Modified:
branches/tdiesler/trunk/src/main/java/org/jboss/ws/deployment/JSR181MetaDataBuilder.java
branches/tdiesler/trunk/src/main/java/org/jboss/ws/jaxrpc/CallImpl.java
branches/tdiesler/trunk/src/test/ant/build-jars-jaxws.xml
branches/tdiesler/trunk/src/test/java/org/jboss/test/ws/jaxws/jsr181/handlerchain/EndpointImpl.java
Log:
Support handler file relative to defining source
Modified: branches/tdiesler/trunk/src/main/java/org/jboss/ws/deployment/JSR181MetaDataBuilder.java
===================================================================
--- branches/tdiesler/trunk/src/main/java/org/jboss/ws/deployment/JSR181MetaDataBuilder.java 2006-09-19 12:24:03 UTC (rev 1006)
+++ branches/tdiesler/trunk/src/main/java/org/jboss/ws/deployment/JSR181MetaDataBuilder.java 2006-09-19 13:07:28 UTC (rev 1007)
@@ -511,7 +511,17 @@
return variable;
}
- // Process an optional @HandlerChain annotation
+ /**
+ * Process an optional @HandlerChain annotation
+ *
+ * Location of the handler chain file. The location supports 2 formats.
+ *
+ * 1. An absolute java.net.URL in externalForm.
+ * (ex: http://myhandlers.foo.com/handlerfile1.xml)
+ *
+ * 2. A relative path from the source file or class file.
+ * (ex: bar/handlerfile1.xml)
+ */
protected void processHandlerChain(EndpointMetaData epMetaData, Class wsClass)
{
if (wsClass.isAnnotationPresent(SOAPMessageHandlers.class))
@@ -553,9 +563,16 @@
fileURL = epMetaData.getResourceLoader().getResource(filename);
}
+ // Try the filename as Resource
if (fileURL == null)
- throw new WSException("Cannot resolve URL to handler file: " + filename);
+ {
+ String packagePath = wsClass.getPackage().getName().replace('.', '/');
+ fileURL = epMetaData.getClassLoader().getResource(packagePath + "/" + filename);
+ }
+ if (fileURL == null)
+ throw new WSException("Cannot resolve handler file '" + filename + "' on " + wsClass.getName());
+
try
{
HandlerChainsMetaData handlerChainsMetaData = null;
Modified: branches/tdiesler/trunk/src/main/java/org/jboss/ws/jaxrpc/CallImpl.java
===================================================================
--- branches/tdiesler/trunk/src/main/java/org/jboss/ws/jaxrpc/CallImpl.java 2006-09-19 12:24:03 UTC (rev 1006)
+++ branches/tdiesler/trunk/src/main/java/org/jboss/ws/jaxrpc/CallImpl.java 2006-09-19 13:07:28 UTC (rev 1007)
@@ -46,7 +46,6 @@
import org.jboss.logging.Logger;
import org.jboss.ws.Constants;
import org.jboss.ws.binding.UnboundHeader;
-import org.jboss.ws.common.CommonBindingProvider;
import org.jboss.ws.common.CommonClient;
import org.jboss.ws.jaxrpc.handler.HandlerChainBaseImpl;
import org.jboss.ws.jaxrpc.handler.SOAPMessageContextJAXRPC;
Modified: branches/tdiesler/trunk/src/test/ant/build-jars-jaxws.xml
===================================================================
--- branches/tdiesler/trunk/src/test/ant/build-jars-jaxws.xml 2006-09-19 12:24:03 UTC (rev 1006)
+++ branches/tdiesler/trunk/src/test/ant/build-jars-jaxws.xml 2006-09-19 13:07:28 UTC (rev 1007)
@@ -131,15 +131,14 @@
</war>
<!-- jaxws-jsr181-handlerchain -->
+ <copy todir="${build.test.dir}/classes/org/jboss/test/ws/jaxws/jsr181/handlerchain" file="${build.test.dir}/resources/jaxws/jsr181/handlerchain/jaxws-handlers.xml"/>
<war warfile="${build.test.dir}/libs/jaxws-jsr181-handlerchain.war" webxml="${build.test.dir}/resources/jaxws/jsr181/handlerchain/WEB-INF/web.xml">
<classes dir="${build.test.dir}/classes">
<include name="org/jboss/test/ws/jaxws/jsr181/handlerchain/EndpointImpl.class"/>
<include name="org/jboss/test/ws/jaxws/jsr181/handlerchain/Endpoint.class"/>
<include name="org/jboss/test/ws/jaxws/jsr181/handlerchain/*Handler.class"/>
+ <include name="org/jboss/test/ws/jaxws/jsr181/handlerchain/jaxws-handlers.xml"/>
</classes>
- <webinf dir="${build.test.dir}/resources/jaxws/jsr181/handlerchain/WEB-INF">
- <include name="jaxws-handlers.xml"/>
- </webinf>
</war>
<!-- jaxws-jsr181-oneway -->
Modified: branches/tdiesler/trunk/src/test/java/org/jboss/test/ws/jaxws/jsr181/handlerchain/EndpointImpl.java
===================================================================
--- branches/tdiesler/trunk/src/test/java/org/jboss/test/ws/jaxws/jsr181/handlerchain/EndpointImpl.java 2006-09-19 12:24:03 UTC (rev 1006)
+++ branches/tdiesler/trunk/src/test/java/org/jboss/test/ws/jaxws/jsr181/handlerchain/EndpointImpl.java 2006-09-19 13:07:28 UTC (rev 1007)
@@ -36,7 +36,7 @@
*/
@WebService
@SOAPBinding(style = SOAPBinding.Style.RPC)
- at HandlerChain(file = "WEB-INF/jaxws-handlers.xml")
+ at HandlerChain(file = "jaxws-handlers.xml") // relative path from the class file
public class EndpointImpl implements Endpoint
{
// Provide logging
Deleted: branches/tdiesler/trunk/src/test/resources/jaxws/jsr181/handlerchain/WEB-INF/jaxws-handlers.xml
===================================================================
--- branches/tdiesler/trunk/src/test/resources/jaxws/jsr181/handlerchain/WEB-INF/jaxws-handlers.xml 2006-09-19 12:24:03 UTC (rev 1006)
+++ branches/tdiesler/trunk/src/test/resources/jaxws/jsr181/handlerchain/WEB-INF/jaxws-handlers.xml 2006-09-19 13:07:28 UTC (rev 1007)
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<handler-chains xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee handler-chain.xsd">
-
- <handler-chain>
- <protocol-bindings>##SOAP11_HTTP</protocol-bindings>
- <handler>
- <handler-name> LogHandler </handler-name>
- <handler-class> org.jboss.test.ws.jaxws.jsr181.handlerchain.LogHandler </handler-class>
- <init-param>
- <param-name>logCategory</param-name>
- <param-value>MyService</param-value>
- </init-param>
- </handler>
- <handler>
- <handler-name> AuthorizationHandler </handler-name>
- <handler-class> org.jboss.test.ws.jaxws.jsr181.handlerchain.AuthorizationHandler </handler-class>
- <soap-role>SecurityProvider</soap-role>
- </handler>
- <handler>
- <handler-name> RoutingHandler </handler-name>
- <handler-class> org.jboss.test.ws.jaxws.jsr181.handlerchain.RoutingHandler </handler-class>
- </handler>
- </handler-chain>
-</handler-chains>
\ No newline at end of file
Copied: branches/tdiesler/trunk/src/test/resources/jaxws/jsr181/handlerchain/jaxws-handlers.xml (from rev 989, branches/tdiesler/trunk/src/test/resources/jaxws/jsr181/handlerchain/WEB-INF/jaxws-handlers.xml)
===================================================================
--- branches/tdiesler/trunk/src/test/resources/jaxws/jsr181/handlerchain/WEB-INF/jaxws-handlers.xml 2006-09-19 08:18:52 UTC (rev 989)
+++ branches/tdiesler/trunk/src/test/resources/jaxws/jsr181/handlerchain/jaxws-handlers.xml 2006-09-19 13:07:28 UTC (rev 1007)
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<handler-chains xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee handler-chain.xsd">
+
+ <handler-chain>
+ <protocol-bindings>##SOAP11_HTTP</protocol-bindings>
+ <handler>
+ <handler-name> LogHandler </handler-name>
+ <handler-class> org.jboss.test.ws.jaxws.jsr181.handlerchain.LogHandler </handler-class>
+ <init-param>
+ <param-name>logCategory</param-name>
+ <param-value>MyService</param-value>
+ </init-param>
+ </handler>
+ <handler>
+ <handler-name> AuthorizationHandler </handler-name>
+ <handler-class> org.jboss.test.ws.jaxws.jsr181.handlerchain.AuthorizationHandler </handler-class>
+ <soap-role>SecurityProvider</soap-role>
+ </handler>
+ <handler>
+ <handler-name> RoutingHandler </handler-name>
+ <handler-class> org.jboss.test.ws.jaxws.jsr181.handlerchain.RoutingHandler </handler-class>
+ </handler>
+ </handler-chain>
+</handler-chains>
\ No newline at end of file
Property changes on: branches/tdiesler/trunk/src/test/resources/jaxws/jsr181/handlerchain/jaxws-handlers.xml
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
More information about the jboss-svn-commits
mailing list