Author: thomas.diesler(a)jboss.com
Date: 2006-11-14 16:10:50 -0500 (Tue, 14 Nov 2006)
New Revision: 1429
Modified:
branches/jbossws-1.0/src/main/java/org/jboss/ws/integration/jboss/ServiceRefMetaDataAdaptor.java
branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jaxrpc/samples/handler/ClientSideHandler.java
branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jaxrpc/samples/handler/ServerSideHandler.java
branches/jbossws-1.0/src/test/resources/jaxrpc/samples-override/handler/WEB-INF/webservices.xml
branches/jbossws-1.0/src/test/resources/jaxrpc/samples/handler/META-INF/application-client.xml
branches/jbossws-1.0/src/test/resources/jaxrpc/samples/handler/wstools-config.xml
Log:
Fix handler init params
Modified:
branches/jbossws-1.0/src/main/java/org/jboss/ws/integration/jboss/ServiceRefMetaDataAdaptor.java
===================================================================
---
branches/jbossws-1.0/src/main/java/org/jboss/ws/integration/jboss/ServiceRefMetaDataAdaptor.java 2006-11-14
20:09:42 UTC (rev 1428)
+++
branches/jbossws-1.0/src/main/java/org/jboss/ws/integration/jboss/ServiceRefMetaDataAdaptor.java 2006-11-14
21:10:50 UTC (rev 1429)
@@ -24,15 +24,15 @@
// $Id: ServiceRefMetaDataAdaptor.java 906 2006-09-06 18:57:40Z thomas.diesler(a)jboss.com
$
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.LinkedHashMap;
+import javax.xml.namespace.QName;
+
import org.jboss.webservice.metadata.serviceref.HandlerMetaData;
import org.jboss.webservice.metadata.serviceref.InitParamMetaData;
import org.jboss.webservice.metadata.serviceref.PortComponentRefMetaData;
import org.jboss.webservice.metadata.serviceref.ServiceRefMetaData;
import org.jboss.ws.metadata.HandlerMetaData.HandlerInitParam;
-import org.jboss.ws.metadata.HandlerMetaData.HandlerType;
import org.jboss.ws.metadata.j2ee.UnifiedHandlerMetaData;
import org.jboss.ws.metadata.j2ee.UnifiedPortComponentRefMetaData;
import org.jboss.ws.metadata.j2ee.UnifiedServiceRefMetaData;
@@ -71,13 +71,11 @@
UnifiedHandlerMetaData uhmd = new UnifiedHandlerMetaData(null);
uhmd.setHandlerName(hmd.getHandlerName());
uhmd.setHandlerClass(hmd.getHandlerClass());
- Arrays.asList(hmd.getSoapHeaders());
for(String portname : hmd.getPortNames())
{
uhmd.addPortName(portname);
}
-
for (InitParamMetaData ipmd : hmd.getInitParams())
{
HandlerInitParam ip = new HandlerInitParam();
@@ -85,6 +83,14 @@
ip.setParamValue(ipmd.getParamValue());
uhmd.addInitParam(ip);
}
+ for (QName soapHeader : hmd.getSoapHeaders())
+ {
+ uhmd.addSoapHeader(soapHeader);
+ }
+ for (String soapRole : hmd.getSoapRoles())
+ {
+ uhmd.addSoapRole(soapRole);
+ }
handlers.add(uhmd);
}
usrmd.setHandlers(handlers);
Modified:
branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jaxrpc/samples/handler/ClientSideHandler.java
===================================================================
---
branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jaxrpc/samples/handler/ClientSideHandler.java 2006-11-14
20:09:42 UTC (rev 1428)
+++
branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jaxrpc/samples/handler/ClientSideHandler.java 2006-11-14
21:10:50 UTC (rev 1429)
@@ -24,6 +24,7 @@
import javax.xml.namespace.QName;
import javax.xml.rpc.JAXRPCException;
import javax.xml.rpc.handler.GenericHandler;
+import javax.xml.rpc.handler.HandlerInfo;
import javax.xml.rpc.handler.MessageContext;
import javax.xml.rpc.handler.soap.SOAPMessageContext;
import javax.xml.soap.SOAPBody;
@@ -35,28 +36,36 @@
import org.jboss.logging.Logger;
+import sun.reflect.ReflectionFactory.GetReflectionFactoryAction;
+
public class ClientSideHandler extends GenericHandler
{
// Provide logging
private static Logger log = Logger.getLogger(ClientSideHandler.class);
- protected QName[] headers = new QName[]{
- new QName("http://somens", "InHeader"),
- new QName("http://somens", "OutHeader"),
- new QName("http://somens", "InOutHeader")
- };
+ protected QName[] headers;
public QName[] getHeaders()
{
return headers;
}
+ public void init(HandlerInfo info)
+ {
+ log.info("init: " + info);
+ headers = info.getHeaders();
+ }
+
public boolean handleRequest(MessageContext msgContext)
{
log.info("handleRequest");
+ QName[] headers = getHeaders();
+ if (headers == null || headers.length != 3)
+ throw new IllegalStateException("Invalid number of headers");
+
try
- {
+ {
SOAPMessage soapMessage = ((SOAPMessageContext)msgContext).getMessage();
SOAPHeader soapHeader = soapMessage.getSOAPHeader();
Modified:
branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jaxrpc/samples/handler/ServerSideHandler.java
===================================================================
---
branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jaxrpc/samples/handler/ServerSideHandler.java 2006-11-14
20:09:42 UTC (rev 1428)
+++
branches/jbossws-1.0/src/test/java/org/jboss/test/ws/jaxrpc/samples/handler/ServerSideHandler.java 2006-11-14
21:10:50 UTC (rev 1429)
@@ -24,6 +24,7 @@
import javax.xml.namespace.QName;
import javax.xml.rpc.JAXRPCException;
import javax.xml.rpc.handler.GenericHandler;
+import javax.xml.rpc.handler.HandlerInfo;
import javax.xml.rpc.handler.MessageContext;
import javax.xml.rpc.handler.soap.SOAPMessageContext;
import javax.xml.soap.Name;
@@ -42,21 +43,27 @@
// Provide logging
private static Logger log = Logger.getLogger(ServerSideHandler.class);
- protected QName[] headers = new QName[]{
- new QName("http://somens", "InHeader"),
- new QName("http://somens", "OutHeader"),
- new QName("http://somens", "InOutHeader")
- };
+ protected QName[] headers;
public QName[] getHeaders()
{
return headers;
}
+ public void init(HandlerInfo info)
+ {
+ log.info("init: " + info);
+ headers = info.getHeaders();
+ }
+
public boolean handleRequest(MessageContext msgContext)
{
log.info("handleRequest");
+ QName[] headers = getHeaders();
+ if (headers == null || headers.length != 3)
+ throw new IllegalStateException("Invalid number of headers");
+
try
{
SOAPMessage soapMessage = ((SOAPMessageContext)msgContext).getMessage();
Modified:
branches/jbossws-1.0/src/test/resources/jaxrpc/samples/handler/META-INF/application-client.xml
===================================================================
---
branches/jbossws-1.0/src/test/resources/jaxrpc/samples/handler/META-INF/application-client.xml 2006-11-14
20:09:42 UTC (rev 1428)
+++
branches/jbossws-1.0/src/test/resources/jaxrpc/samples/handler/META-INF/application-client.xml 2006-11-14
21:10:50 UTC (rev 1429)
@@ -18,6 +18,18 @@
<handler>
<handler-name>HeaderTestHandler</handler-name>
<handler-class>org.jboss.test.ws.jaxrpc.samples.handler.ClientSideHandler</handler-class>
+ <init-param>
+ <param-name>ClientParam1</param-name>
+ <param-value>value1</param-value>
+ </init-param>
+ <init-param>
+ <param-name>ClientParam2</param-name>
+ <param-value>value2</param-value>
+ </init-param>
+ <soap-header
xmlns:ns1='http://somens'>ns1:InHeader</soap-header>
+ <soap-header
xmlns:ns1='http://somens'>ns1:OutHeader</soap-header>
+ <soap-header
xmlns:ns1='http://somens'>ns1:InOutHeader</soap-header>
+ <soap-role>role1</soap-role>
</handler>
</service-ref>
Modified:
branches/jbossws-1.0/src/test/resources/jaxrpc/samples/handler/wstools-config.xml
===================================================================
---
branches/jbossws-1.0/src/test/resources/jaxrpc/samples/handler/wstools-config.xml 2006-11-14
20:09:42 UTC (rev 1428)
+++
branches/jbossws-1.0/src/test/resources/jaxrpc/samples/handler/wstools-config.xml 2006-11-14
21:10:50 UTC (rev 1429)
@@ -34,5 +34,17 @@
<handler>
<handler-name>HeaderTestHandler</handler-name>
<handler-class>org.jboss.test.ws.jaxrpc.samples.handler.HeaderTestHandler</handler-class>
+ <init-param>
+ <param-name>ServerParam1</param-name>
+ <param-value>value1</param-value>
+ </init-param>
+ <init-param>
+ <param-name>ServerParam2</param-name>
+ <param-value>value2</param-value>
+ </init-param>
+ <soap-header
xmlns:ns1='http://somens'>ns1:InHeader</soap-header>
+ <soap-header
xmlns:ns1='http://somens'>ns1:OutHeader</soap-header>
+ <soap-header
xmlns:ns1='http://somens'>ns1:InOutHeader</soap-header>
+ <soap-role>role1</soap-role>
</handler>
-->
Modified:
branches/jbossws-1.0/src/test/resources/jaxrpc/samples-override/handler/WEB-INF/webservices.xml
===================================================================
---
branches/jbossws-1.0/src/test/resources/jaxrpc/samples-override/handler/WEB-INF/webservices.xml 2006-11-14
20:09:42 UTC (rev 1428)
+++
branches/jbossws-1.0/src/test/resources/jaxrpc/samples-override/handler/WEB-INF/webservices.xml 2006-11-14
21:10:50 UTC (rev 1429)
@@ -13,6 +13,18 @@
<handler>
<handler-name>HeaderTestHandler</handler-name>
<handler-class>org.jboss.test.ws.jaxrpc.samples.handler.ServerSideHandler</handler-class>
+ <init-param>
+ <param-name>ServerParam1</param-name>
+ <param-value>value1</param-value>
+ </init-param>
+ <init-param>
+ <param-name>ServerParam2</param-name>
+ <param-value>value2</param-value>
+ </init-param>
+ <soap-header
xmlns:ns1='http://somens'>ns1:InHeader</soap-header>
+ <soap-header
xmlns:ns1='http://somens'>ns1:OutHeader</soap-header>
+ <soap-header
xmlns:ns1='http://somens'>ns1:InOutHeader</soap-header>
+ <soap-role>role1</soap-role>
</handler>
</port-component>
</webservice-description>
Show replies by date