As part of the promotion of the Axis project to a top level project, we have decided to create separate mailing lists for Axis 1 and Axis2. For all Axis 1 related questions please subscribe and post to [email protected]. Thanks!
Andreas On Wed, Feb 24, 2010 at 20:40, sandybose007 <[email protected]> wrote: > > hi, > > My Client-config.wsdd looks like: > <?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="attachments.Directory" value="C:tmp"/> > <parameter name="attachments.implementation" > value="org.apache.axis.attachments.AttachmentsImpl"/> > <parameter name="sendMultiRefs" value="false"/> > <parameter name="sendXsiTypes" value="false"/> > <parameter name="sendXMLDeclaration" value="true"/> > <parameter name="axis.sendMinimizedElements" value="true"/> > > <!-- Referenz auf die Handlerchains bei allen Services --> > <requestFlow> > <chain type="VRSStandardRequestChain"/> > </requestFlow> > <responseFlow> > <chain type="VRSStandardResponseChain"/> > </responseFlow> > > </globalConfiguration> > > <!-- Handler bei Servicenehmern und Servicegebern --> > <handler name="VRSValidation" > type="java:de.genoip.vrs.axis.handler.validation.VRSValidationHandler"/> > <handler name="VRSNamespace" > type="java:de.genoip.vrs.axis.handler.VRSNamespaceHandler"/> > <handler name="VRSAddTRMVersion" > type="java:de.genoip.vrs.axis.handler.protocol.VRSAddProtocolHandler"/> > <handler name="VRSCheckTRMVersion" > type="java:de.genoip.vrs.axis.handler.protocol.VRSExtractProtocolHandler"/> > <handler name="VRSCompression" > type="java:de.genoip.vrs.axis.handler.compression.VRSCompressionHandler"/> > <handler name="VRSDeCompression" > type="java:de.genoip.vrs.axis.handler.compression.VRSDeCompressionHandler"/> > <handler name="VRSAddSession" > type="java:de.genoip.vrs.axis.trm22.handler.session.VRSAddSessionHandler"/> > <handler name="VRSExtractSession" > type="java:de.genoip.vrs.axis.trm22.handler.session.VRSExtractSessionHandler"/> > <handler name="VRSExtractIdentity22" > type="java:de.genoip.vrs.axis.trm22.handler.identity.VRSExtractIdentityHandler"/> > <handler name="VRSExtractIdentity24" > type="java:de.genoip.vrs.axis.trm24.handler.identity.VRSExtractIdentityHandler"/> > <handler name="VRSExtractIdentity26" > type="java:de.genoip.vrs.axis.trm26.handler.identity.VRSExtractIdentityHandler"/> > <handler name="VRSExtractAuthorisation" > type="java:de.genoip.vrs.axis.handler.security.VRSExtractSecurityHandler"/> > <handler name="VRSAddTicket" > type="java:de.genoip.vrs.axis.handler.ticket.VRSAddTicketHandler"/> > <handler name="VRSExtractTicket" > type="java:de.genoip.vrs.axis.handler.ticket.VRSExtractTicketHandler"/> > <handler name="VRSAddSecurity24" > type="java:de.genoip.vrs.axis.trm24.handler.security.VRSAddSecurityHandler"/> > <handler name="VRSValidateSecurity24" > type="java:de.genoip.vrs.axis.trm24.handler.security.VRSValidateSecurityHandler"/> > <handler name="VRSAddTarget26" > type="java:de.genoip.vrs.axis.trm26.handler.target.VRSAddTargetHandler"/> > <handler name="VRSExtractTarget26" > type="java:de.genoip.vrs.axis.trm26.handler.target.VRSExtractTargetHandler"/> > > > > <!-- Handler nur bei Servicenehmern --> > <handler name="VRSAddService" > type="java:de.genoip.vrs.axis.handler.service.VRSAddServiceHandler"/> > <handler name="VRSAddIdentity22" > type="java:de.genoip.vrs.axis.trm22.handler.identity.VRSAddIdentityHandler"/> > <handler name="VRSAddIdentity26" > type="java:de.genoip.vrs.axis.trm26.handler.identity.VRSAddIdentityHandler"/> > <handler name="VRSAddSecurity20" > type="java:de.genoip.vrs.axis.handler.security.VRSAddSecurityHandler"/> > <handler name="VRSException20" > type="java:de.genoip.vrs.axis.handler.faults.VRSFaultHandler"/> > <handler name="VRSException22" > type="java:de.genoip.vrs.axis.trm22.handler.faults.VRSFaultHandler"/> > <handler name="VRSAddMandator" > type="java:de.genoip.vrs.axis.trm22.handler.mandator.VRSAddMandatorHandler"/> > > <!-- Definitionen der Handlerchains bei Servicenehmern --> > <chain name="VRSStandardRequestChain"> > <handler type="VRSNamespace"/> > > <handler type="VRSValidation"/> > <handler type="VRSCompression"/> > <handler type="VRSAddTRMVersion"/> > <handler type="VRSAddService"/> > <handler type="VRSAddIdentity22"/> > <handler type="VRSAddIdentity26"/> > <handler type="VRSAddSecurity20"/> > <handler type="VRSAddSession"/> > <handler type="VRSAddMandator"/> > <handler type="VRSAddTarget26"/> > <handler type="VRSAddTicket"/> > <handler type="VRSAddSecurity24"/> > </chain> > <chain name="VRSStandardResponseChain"> > <handler type="VRSExtractTicket"/> > <handler type="VRSException20"/> > <handler type="VRSException22"/> > <handler type="VRSValidateSecurity24"/> > <handler type="VRSDeCompression"/> > <handler type="VRSValidation"/> > <handler type="VRSExtractIdentity22"/> > <handler type="VRSExtractIdentity24"/> > <handler type="VRSExtractIdentity26"/> > <handler type="VRSExtractAuthorisation"/> > <handler type="VRSExtractSession"/> > <handler type="VRSExtractTarget26"/> > <handler type="VRSCheckTRMVersion"/> > > </chain> > > > <!-- Transportdefinitionen --> > <transport name="http" > pivot="java:org.apache.axis.transport.http.HTTPSender"/> > <transport name="vrssim" > pivot="java:de.genoip.vrs.axis.transport.sim.VRSSIMSender"/> > <!-- transport name="vrssoc" > pivot="java:de.genoip.vrs.axis.transport.soc.VRSSOCSender"/ --> > <!-- transport name="vrsmq" > pivot="java:de.genoip.vrs.axis.transport.mq52.VRSMQSender"/ --> > > </deployment> > > > ---------------------------------- > I had to create my own engine config which extends SimpleProvider for SSL > functionality. > So that when i create a new Service, i pass my own engine config object to > it;i.e new Service(MyEngineConfiguration). > My question is: > 1. Is there a way of telling my custom engine config to read the > client-config.wsdd? > BETTER > 2. how do i assign my handlers{or chain of handler} in the client config > mentioned above to my own engine config > > ------------------ > this is how my engine config looks like > > /** > * > */ > > > //import java.util.HashMap; > import java.util.Hashtable; > > import org.apache.axis.AxisEngine; > import org.apache.axis.AxisProperties; > import org.apache.axis.ConfigurationException; > import org.apache.axis.EngineConfiguration; > import org.apache.axis.Handler; > import org.apache.axis.SimpleTargetedChain; > import org.apache.axis.WSDDEngineConfiguration; > import org.apache.axis.configuration.SimpleProvider; > import org.apache.axis.deployment.wsdd.WSDDDeployment; > import org.apache.axis.encoding.TypeMappingRegistry; > import org.apache.axis.handlers.soap.SOAPService; > import org.apache.axis.transport.http.HTTPSender; > import org.apache.axis.transport.http.HTTPTransport; > import org.apache.ws.axis.security.WSDoAllSender; > > /** > * <p> > * Axis Client Configuration > * </p> > * @author Richard Unger > */ > public class MyAxisEngineConfig extends SimpleProvider{ > > /** > * Keystore filename > */ > private String keystore = null; > /** > * Keystore type > */ > private String keystoretype = null; > /** > * Keystore password > */ > private String keystorepin = null; > /** > * Key password > */ > private String keypin = null; > > /* > * serviceOptions > * */ > Hashtable serviceOptions = null; > String serviceName = null; > > public String getKeyPassPhrase() { > return keypin; > } > > public void setKeyPassPhrase(String keypin) { > this.keypin = keypin; > } > > /** > * Truststore filename > */ > private String truststore = null; > /** > * Truststore PIN > */ > private String truststorepin = null; > /** > * Truststore Type > */ > private String truststoreType = null; > /** > * true to disable XML formatting > */ > private boolean disablePrettyXML = true; > /** > * true to enable namespace prefix optimization (see Axis docs) > */ > private boolean enableNamespacePrefixOptimization = false; > > /** > * Constructor > */ > public MyAxisEngineConfig() { > super(); > } > > /** > * @param arg0 > */ > public MyAxisEngineConfig(EngineConfiguration arg0) { > super(arg0); > } > > /** > * @param arg0 > */ > public MyAxisEngineConfig(TypeMappingRegistry arg0) { > super(arg0); > } > > > > > /** > * @see > org.apache.axis.configuration.SimpleProvider#configureEngine(org.apache.axis.AxisEngine) > */ > �...@override > public void configureEngine(AxisEngine engine) throws > ConfigurationException { > super.configureEngine(engine); > engine.refreshGlobalOptions(); > } > > /** > * @param keystore the keystore to set > */ > public void setKeystore(String keystore) { > this.keystore = keystore; > } > > /** > * @param keystorepin the keystorepin to set > */ > public void setKeystorePassword(String keystorepin) { > this.keystorepin = keystorepin; > } > > /** > * @param keystoretype the keystoretype to set > */ > public void setKeystoreType(String keystoretype) { > this.keystoretype = keystoretype; > } > > /** > * @param truststore the truststore to set > */ > public void setTruststore(String truststore) { > this.truststore = truststore; > } > > /** > * @param truststorepin the truststorepin to set > */ > public void setTruststorePassword(String truststorepin) { > this.truststorepin = truststorepin; > } > > /** > * @return the truststoreType > */ > public String getTruststoreType() { > return truststoreType; > } > > /** > * @param truststoreType the truststoreType to set > */ > public void setTruststoreType(String truststoreType) { > this.truststoreType = truststoreType; > } > > public void setServiceOptions(String name, Hashtable options){ > serviceName = name; > serviceOptions = options; > } > > /** > * <p> > * Initialize, with logging off > * </p> > */ > public void initialize() { > initialize(false); > } > > /** > * <p> > * Initialize > * </p> > * @param logging true if logging is desired > */ > �...@suppresswarnings("unchecked") > public void initialize(boolean logging) { > AxisProperties.setProperty("axis.socketSecureFactory", > "com.apps.axis.MySecureSocketFactory"); > > AxisProperties.setProperty("axis.socketFactory","org.apache.axis.components.net.DefaultSocketFactory"); > > Hashtable opts = new Hashtable(); > opts.put(AxisEngine.PROP_DISABLE_PRETTY_XML, disablePrettyXML); > opts.put(AxisEngine.PROP_ENABLE_NAMESPACE_PREFIX_OPTIMIZATION, > enableNamespacePrefixOptimization); > setGlobalOptions(opts); > > Handler pivot = new HTTPSender(); > if (truststore!=null){ > pivot.setOption("truststore",truststore); > if (truststoreType!=null) > pivot.setOption("truststoreType",truststoreType); > if (truststorepin!=null) > pivot.setOption("truststorePass",truststorepin); > } > > if (keystore != null){ > pivot.setOption("clientauth","true"); > pivot.setOption("keystore", keystore); > if (keystoretype!=null) > pivot.setOption("keystoreType", keystoretype); > if (keystorepin!=null){ > pivot.setOption("keystorePass", keystorepin); > } > if (keypin!=null){ > pivot.setOption("keypass",keypin); > } > } > > Handler transport = new SimpleTargetedChain(pivot); > deployTransport(HTTPTransport.DEFAULT_TRANSPORT_NAME, transport); > > /* > * Deploy service handlers > * */ > if(serviceOptions != null){ > //Need to add required handler as provided in service options > Handler requestHandler = new WSDoAllSender(); > requestHandler.setOptions(serviceOptions); > deployService(serviceName, new SOAPService(requestHandler, > pivot, > null)); > } > } > > /** > * @return the disablePrettyXML > */ > public boolean isDisablePrettyXML() { > return disablePrettyXML; > } > > /** > * @param disablePrettyXML the disablePrettyXML to set > */ > public void setDisablePrettyXML(boolean disablePrettyXML) { > this.disablePrettyXML = disablePrettyXML; > } > > /** > * @return the enableNamespacePrefixOptimization > */ > public boolean isEnableNamespacePrefixOptimization() { > return enableNamespacePrefixOptimization; > } > > /** > * @param enableNamespacePrefixOptimization the > enableNamespacePrefixOptimization to set > */ > public void setEnableNamespacePrefixOptimization( > boolean enableNamespacePrefixOptimization) { > this.enableNamespacePrefixOptimization = > enableNamespacePrefixOptimization; > } > > } > > -- > View this message in context: > http://old.nabble.com/how-to-invoke-a-chain-of-handlers-if-am-creating-my-own-engine-config-tp27714289p27714289.html > Sent from the Axis - User mailing list archive at Nabble.com. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
