jaliya 2005/03/07 04:46:12
Modified: sandesha/config sandesha.properties
sandesha/interop server-config.wsdd
sandesha/src/org/apache/sandesha Constants.java
sandesha/src/org/apache/sandesha/server RMInvoker.java
sandesha/src/org/apache/sandesha/util PropertyLoader.java
Added: sandesha/config client-config.wsdd
Log:
Now the provider is loaded using the properties file. User should specify the
actual provider that should be used to invoke the service in
sandesha.properties file
Revision Changes Path
1.4 +3 -1 ws-fx/sandesha/config/sandesha.properties
Index: sandesha.properties
===================================================================
RCS file: /home/cvs/ws-fx/sandesha/config/sandesha.properties,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- sandesha.properties 7 Mar 2005 05:34:33 -0000 1.3
+++ sandesha.properties 7 Mar 2005 12:46:12 -0000 1.4
@@ -5,4 +5,6 @@
responseHandler2 = org.apache.sandesha.ws.rm.handlers.RMServerRequestHandler
listenerRequestHandler1 =
org.apache.axis.message.addressing.handler.AddressingHandler
-listenerRequestHandler2 =
org.apache.sandesha.ws.rm.handlers.RMServerRequestHandler
\ No newline at end of file
+listenerRequestHandler2 =
org.apache.sandesha.ws.rm.handlers.RMServerRequestHandler
+
+providerClass = org.apache.axis.providers.java.RPCProvider
\ No newline at end of file
1.1 ws-fx/sandesha/config/client-config.wsdd
Index: client-config.wsdd
===================================================================
<?xml version="1.0" encoding="UTF-8"?>
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<globalConfiguration>
<parameter name="adminPassword" value="admin"/>
<parameter name="disablePrettyXML" value="true"/>
<parameter name="attachments.implementation"
value="org.apache.axis.attachments.AttachmentsImpl"/>
<parameter name="sendXsiTypes" value="true"/>
<parameter name="sendMultiRefs" value="true"/>
<parameter name="sendXMLDeclaration" value="true"/>
</globalConfiguration>
<handler name="RMSender" type="java:org.apache.sandesha.client.RMSender"/>
<transport name="java"
pivot="java:org.apache.axis.transport.java.JavaSender"/>
<transport name="http"
pivot="java:org.apache.axis.transport.http.HTTPSender"/>
<transport name="local"
pivot="java:org.apache.axis.transport.local.LocalSender"/>
<transport name="RMTransport" pivot="RMSender"/>
</deployment>
1.6 +2 -2 ws-fx/sandesha/interop/server-config.wsdd
Index: server-config.wsdd
===================================================================
RCS file: /home/cvs/ws-fx/sandesha/interop/server-config.wsdd,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- server-config.wsdd 7 Mar 2005 05:34:34 -0000 1.5
+++ server-config.wsdd 7 Mar 2005 12:46:12 -0000 1.6
@@ -3,9 +3,9 @@
<globalConfiguration>
<parameter name="adminPassword" value="admin"/>
<parameter name="disablePrettyXML" value="true"/>
- <parameter name="sendMultiRefs" value="true"/>
- <parameter name="sendXsiTypes" value="true"/>
<parameter name="attachments.implementation"
value="org.apache.axis.attachments.AttachmentsImpl"/>
+ <parameter name="sendXsiTypes" value="true"/>
+ <parameter name="sendMultiRefs" value="true"/>
<parameter name="sendXMLDeclaration" value="true"/>
<requestFlow>
<handler type="java:org.apache.axis.handlers.JWSHandler">
1.35 +3 -2 ws-fx/sandesha/src/org/apache/sandesha/Constants.java
Index: Constants.java
===================================================================
RCS file: /home/cvs/ws-fx/sandesha/src/org/apache/sandesha/Constants.java,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- Constants.java 7 Mar 2005 05:34:34 -0000 1.34
+++ Constants.java 7 Mar 2005 12:46:12 -0000 1.35
@@ -86,6 +86,7 @@
public static final String SEQUENCE_ACK = "SequenceAcknowledgement";
public static final String TERMINATE_DEQUENCE = "TerminateSequence";
public static final String SEQUENCE_FAULT = "SequenceFault";
+ public static final String ACKS_TO="AcksTo";
public static final double MAX_MSG_NO = 18446744073709551615d;
@@ -184,8 +185,8 @@
public static final String LISTENER_REQUEST_HANDLER =
"listenerRequestHandler";
public static final String LISTENER_RESPONSE_HANDLER =
"listenerResponseHandler";
- public static final String PROVIDER_NAME = "providerClass";
- public static final String PROVIDER_CLASS =
"org.apache.axis.providers.java.RPCProvider";
+ public static final String PROVIDER_CLASS = "providerClass";
+ public static final String DEFAULT_PROVIDER_CLASS =
"org.apache.axis.providers.java.RPCProvider";
public static final String CLASS_NAME="className";
public static final String RMSERVICE="RMService";
1.17 +7 -2
ws-fx/sandesha/src/org/apache/sandesha/server/RMInvoker.java
Index: RMInvoker.java
===================================================================
RCS file:
/home/cvs/ws-fx/sandesha/src/org/apache/sandesha/server/RMInvoker.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- RMInvoker.java 7 Mar 2005 05:34:34 -0000 1.16
+++ RMInvoker.java 7 Mar 2005 12:46:12 -0000 1.17
@@ -18,11 +18,13 @@
import org.apache.axis.Message;
import org.apache.axis.MessageContext;
+import org.apache.axis.Handler;
import org.apache.axis.components.logger.LogFactory;
import org.apache.axis.components.uuid.UUIDGen;
import org.apache.axis.components.uuid.UUIDGenFactory;
import org.apache.axis.message.addressing.AddressingHeaders;
import org.apache.axis.providers.java.RPCProvider;
+import org.apache.axis.providers.java.JavaProvider;
import org.apache.commons.logging.Log;
import org.apache.sandesha.Constants;
import org.apache.sandesha.EnvelopeCreator;
@@ -30,6 +32,7 @@
import org.apache.sandesha.RMMessageContext;
import org.apache.sandesha.storage.dao.SandeshaQueueDAO;
import org.apache.sandesha.util.RMMessageCreator;
+import org.apache.sandesha.util.PropertyLoader;
import javax.xml.soap.SOAPEnvelope;
@@ -61,8 +64,10 @@
//Currently RPCProvider is used as the default provider
and this is used to actually invoke the service.
//To provide a maximum flexibility the actual provider
should be a configurable entity
// where the class can be loaded at runtime.
- RPCProvider rpcProvider = new RPCProvider();
- rpcProvider.invoke(rmMessageContext.getMsgContext());
+
+ Class c = Class.forName(PropertyLoader.getProvider());
+ JavaProvider provider=(JavaProvider)c.newInstance();
+ provider.invoke(rmMessageContext.getMsgContext());
if
(rmMessageContext.getMsgContext().getOperation().getMethod().getReturnType() !=
Void.TYPE) {
if (rmMessageContext.isLastMessage()) {
1.7 +1 -1
ws-fx/sandesha/src/org/apache/sandesha/util/PropertyLoader.java
Index: PropertyLoader.java
===================================================================
RCS file:
/home/cvs/ws-fx/sandesha/src/org/apache/sandesha/util/PropertyLoader.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- PropertyLoader.java 7 Mar 2005 05:34:35 -0000 1.6
+++ PropertyLoader.java 7 Mar 2005 12:46:12 -0000 1.7
@@ -103,7 +103,7 @@
Properties prop = loadProperties();
String s;
- s = prop.getProperty(Constants.ClientProperties.PROVIDER_NAME);
+ s = prop.getProperty(Constants.ClientProperties.PROVIDER_CLASS);
if (s == null)
return Constants.ClientProperties.PROVIDER_CLASS;