summaryrefslogtreecommitdiffstats
path: root/ldap
diff options
context:
space:
mode:
authorDavid Boreham <dboreham@redhat.com>2005-04-02 00:50:29 +0000
committerDavid Boreham <dboreham@redhat.com>2005-04-02 00:50:29 +0000
commit24d4adc364c57d5fb440aabbaa5ad7c549292f3c (patch)
tree5b30b1b95cae5072d1f33e94f18cbf12cb621228 /ldap
parent43325bbecf2eb1955a59b3ba7cd2c0d8e805842b (diff)
downloadds-24d4adc364c57d5fb440aabbaa5ad7c549292f3c.tar.gz
ds-24d4adc364c57d5fb440aabbaa5ad7c549292f3c.tar.xz
ds-24d4adc364c57d5fb440aabbaa5ad7c549292f3c.zip
Change DSMLGW to work with Axis1.2rc3
Diffstat (limited to 'ldap')
-rw-r--r--ldap/clients/dsmlgw/Makefile1
-rw-r--r--ldap/clients/dsmlgw/build.xml2
-rw-r--r--ldap/clients/dsmlgw/misc/server-config.wsdd38
-rw-r--r--ldap/clients/dsmlgw/src/com/netscape/dsml/gateway/gatewayHandler.java40
4 files changed, 25 insertions, 56 deletions
diff --git a/ldap/clients/dsmlgw/Makefile b/ldap/clients/dsmlgw/Makefile
index 1b05ebd7..77b3e081 100644
--- a/ldap/clients/dsmlgw/Makefile
+++ b/ldap/clients/dsmlgw/Makefile
@@ -14,6 +14,7 @@ include $(BUILD_ROOT)/nsconfig.mk
include $(BUILD_ROOT)/ldap/javarules.mk
all: $(ANT_DEP) $(LDAPJDK_DEP)
+ cp $(CLASS_DEST)/$(AXIS_REL_DIR)/lib/axis.jar $(CLASS_DEST)
$(ANT)
clean:
diff --git a/ldap/clients/dsmlgw/build.xml b/ldap/clients/dsmlgw/build.xml
index f2c2643d..aa9aaaa3 100644
--- a/ldap/clients/dsmlgw/build.xml
+++ b/ldap/clients/dsmlgw/build.xml
@@ -23,6 +23,7 @@
<property name="saaj.jar" value="${globaldist.dir}/saaj.jar"/>
<property name="xercesImpl.jar" value="${globaldist.dir}/xercesImpl.jar"/>
<property name="xmlParserAPIs.jar" value="${globaldist.dir}/xml-apis.jar"/>
+<property name="axis.jar" value="${globaldist.dir}/axis.jar"/>
<path id="class.path">
<pathelement location="${ldapjdk.jar}"/>
@@ -33,6 +34,7 @@
<pathelement location="${xercesImpl.jar}"/>
<pathelement location="${xmlParserAPIs.jar}"/>
+<pathelement location="${axis.jar}"/>
</path>
<property name="build.dir" value="${mcom.root}/built/dsmlgw"/>
diff --git a/ldap/clients/dsmlgw/misc/server-config.wsdd b/ldap/clients/dsmlgw/misc/server-config.wsdd
index 747e1478..aeed63e9 100644
--- a/ldap/clients/dsmlgw/misc/server-config.wsdd
+++ b/ldap/clients/dsmlgw/misc/server-config.wsdd
@@ -28,42 +28,8 @@
</requestFlow>
<handler name="Authenticate" type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/>
- <service name="dsmlgw" provider="java:RPC">
-<!-- this is for the javax.xml.rpc.handler's -->
-<handlerInfoChain>
- <handlerInfo classname="com.netscape.dsml.gateway.gatewayHandler">
- <parameter name="server" value="bison"/>
- <parameter name="port" value="38900"/>
- <parameter name="dn" value="ou=People,dc=mtbrook,dc=bozemanpass,dc=com"/>
- <parameter name="foo" value="bar"/>
- <header qname="QNAME" xmlns:ns="DSML2core"/>
- </handlerInfo>
- <role soapActorName="URI"/>
-</handlerInfoChain>
-
-
- <operation name="process" returnQName="returnqname" returnType="ns1:DataHandler" xmlns:ns1="dsmlgw">
- <parameter name="in1" type="ns1:DataHandler"/>
- </operation>
- <parameter name="allowedMethods" value="process batchRequest"/>
- <parameter name="className" value="com.netscape.dsml.gateway.gatewayService"/>
- <typeMapping deserializer="org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" qname="ns2:DataHandler" serializer="org.apache.axis.encoding.ser.JAFDataHandlerSerializerFactory" type="java:javax.activation.DataHandler" xmlns:ns2="DSMLService"/>
- </service>
-
-
- <service name="Version" provider="java:RPC">
- <parameter name="allowedMethods" value="getVersion"/>
- <parameter name="className" value="org.apache.axis.Version"/>
- </service>
- <service name="urn:xmltoday-delayed-quotes" provider="java:RPC">
- <requestFlow name="checks">
- <handler type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/>
- <handler type="java:org.apache.axis.handlers.SimpleAuthorizationHandler"/>
- </requestFlow>
- <parameter name="allowedRoles" value="user1,user2"/>
- <parameter name="allowedMethods" value="getQuote test"/>
- <parameter name="wsdlServicePort" value="GetQuote"/>
- <parameter name="className" value="samples.stock.StockQuoteService"/>
+ <service name="dsmlgw" provider="Handler">
+ <parameter name="handlerClass" value="com.netscape.dsml.gateway.gatewayHandler"/>
</service>
<transport name="http">
diff --git a/ldap/clients/dsmlgw/src/com/netscape/dsml/gateway/gatewayHandler.java b/ldap/clients/dsmlgw/src/com/netscape/dsml/gateway/gatewayHandler.java
index 8777a9f0..de3a2ecd 100644
--- a/ldap/clients/dsmlgw/src/com/netscape/dsml/gateway/gatewayHandler.java
+++ b/ldap/clients/dsmlgw/src/com/netscape/dsml/gateway/gatewayHandler.java
@@ -11,7 +11,6 @@ import javax.xml.namespace.QName;
import javax.xml.parsers.*;
import javax.xml.rpc.handler.Handler;
import javax.xml.rpc.handler.HandlerInfo;
-import javax.xml.rpc.handler.MessageContext;
import javax.xml.rpc.handler.soap.SOAPMessageContext;
import javax.xml.soap.Name;
import javax.xml.soap.SOAPEnvelope;
@@ -27,8 +26,12 @@ import org.w3c.dom.Document;
import org.xml.sax.*;
import org.w3c.dom.*;
import javax.xml.soap.*;
+import org.apache.axis.AxisFault;
+import org.apache.axis.Message;
+import org.apache.axis.MessageContext;
+import org.apache.axis.handlers.BasicHandler;
-public class gatewayHandler implements Handler {
+public class gatewayHandler extends BasicHandler {
private HandlerInfo handlerInfo;
static private javax.xml.soap.MessageFactory messageFactory ;
static private javax.xml.soap.SOAPFactory sef ;
@@ -44,8 +47,18 @@ public class gatewayHandler implements Handler {
}
+ public void invoke(MessageContext context) throws AxisFault {
+ if (context.getPastPivot() == false) {
+ handleRequest(context);
+ }
+ }
-
+ public void cleanup() {
+ super.cleanup();
+ destroy();
+ }
+
+
public boolean handleRequest(MessageContext context) {
/*
* this section will set user, pwd, if it came via a http authentication header
@@ -82,7 +95,7 @@ public class gatewayHandler implements Handler {
}
}
- SOAPMessage out_m = null;
+ org.apache.axis.Message out_m = null;
SOAPEnvelope out_env = null;
javax.xml.soap.SOAPBody out_body = null;
javax.xml.soap.SOAPElement out_fResponse = null;
@@ -92,7 +105,7 @@ public class gatewayHandler implements Handler {
javax.xml.soap.SOAPEnvelope se = sp.getEnvelope();
javax.xml.soap.SOAPBody sb = se.getBody();
- out_m = messageFactory.createMessage();
+ out_m= new Message(context.getRequestMessage().getSOAPEnvelope());
out_env = out_m.getSOAPPart().getEnvelope();
out_body = out_env.getBody();
out_fResponse = out_body.addBodyElement(out_env.createName("batchResponse"));
@@ -155,26 +168,12 @@ public class gatewayHandler implements Handler {
* SOAPResponse message, it will be sent as soon as the request
* turns the other way into a reponse.
*/
- context.setProperty("RESPONSE", out_m);
+ context.setResponseMessage( (Message)out_m );
return false;
}
- /**
- * @see javax.xml.rpc.handler.Handler#handleResponse(MessageContext)
- */
- public boolean handleResponse(MessageContext context) {
- SOAPMessage m;
- m = (SOAPMessage) context.getProperty("RESPONSE");
-
- try {
- ((SOAPMessageContext)context).setMessage(m);
- }
- catch (Exception e) {
- }
- return true;
- }
public boolean handleFault(MessageContext context) {
return false;
@@ -202,4 +201,5 @@ public class gatewayHandler implements Handler {
}
+
}