You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juddi.apache.org by al...@apache.org on 2014/01/12 19:57:44 UTC
svn commit: r1557594 - in
/juddi/trunk/juddi-examples/subscription-notification-amqp/src/main:
java/org/apache/juddi/subscription/notify/ resources/ resources/META-INF/
Author: alexoree
Date: Sun Jan 12 18:57:43 2014
New Revision: 1557594
URL: http://svn.apache.org/r1557594
Log:
JUDDI-717 updating the amqp test cases
Added:
juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/java/org/apache/juddi/subscription/notify/Demo.java
juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/resources/
juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/resources/META-INF/
juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/resources/META-INF/uddi.xml
Modified:
juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/java/org/apache/juddi/subscription/notify/AMQPNotifier.java
Modified: juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/java/org/apache/juddi/subscription/notify/AMQPNotifier.java
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/java/org/apache/juddi/subscription/notify/AMQPNotifier.java?rev=1557594&r1=1557593&r2=1557594&view=diff
==============================================================================
--- juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/java/org/apache/juddi/subscription/notify/AMQPNotifier.java (original)
+++ juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/java/org/apache/juddi/subscription/notify/AMQPNotifier.java Sun Jan 12 18:57:43 2014
@@ -46,102 +46,116 @@ import org.uddi.v3_service.DispositionRe
/**
* AMQP Notifier
- *
- * This is designed to enable users to setup AMQP based alerts for UDDI subscriptions
- *
- * This class is partically complete, but it is largely untested and lacks any kind of
- *
+ *
+ * This is designed to enable users to setup AMQP based alerts for UDDI
+ * subscriptions
+ *
+ * This class is partically complete, but it is largely untested and lacks any
+ * kind of
+ *
* the following settings need to be added to the juddiv3.xml file
* amqp.java.naming.factory.initial=org.apache.qpid.jndi.PropertiesFileInitialContextFactory
- * amqp.connectionfactory.qpidConnectionfactory
- * amqp.destination=(some topic or queue name)
- * amqp.destination.type=topic
- *
- * usage
- * create a service/bindingtemplate/accessPoint where the value is amqp://url_to_qpid/amqp The useType must be "endPoint".
- * create a subscription where the binding template reference points to this endpoint.
- * trigger the subscription and wait for delivery.
+ * amqp.connectionfactory.qpidConnectionfactory amqp.destination=(some topic or
+ * queue name) amqp.destination.type=topic
+ *
+ * usage create a service/bindingtemplate/accessPoint where the value is
+ * amqp://url_to_qpid/amqp The useType must be "endPoint". create a subscription
+ * where the binding template reference points to this endpoint. trigger the
+ * subscription and wait for delivery.
+ *
* @author <a href="mailto:alexoree@apache.org">Alex O'Ree</a>
*/
public class AMQPNotifier implements Notifier {
- Log log = LogFactory.getLog(this.getClass());
- String destination = null;
+ Log log = LogFactory.getLog(this.getClass());
+ String destination = null;
- public AMQPNotifier(BindingTemplate bindingTemplate) throws URISyntaxException, ConfigurationException {
- super();
- if (!AccessPointType.END_POINT.toString().equalsIgnoreCase(bindingTemplate.getAccessPointType())) {
- log.error("AMQP enpoints only support AccessPointType " + AccessPointType.END_POINT);
- }
- String accessPointUrl = bindingTemplate.getAccessPointUrl().toLowerCase();
- if (!accessPointUrl.startsWith("amqp:")) {
- log.warn("AMQP accessPointUrl for bindingTemplate " + bindingTemplate.getEntityKey()
- + " should start with 'amqp:'");
- } else {
- destination = accessPointUrl.substring(accessPointUrl.indexOf(":") + 1);
+ String exchangeType = null;
+ String exchangeName = null;
+ public AMQPNotifier(BindingTemplate bindingTemplate) throws URISyntaxException, ConfigurationException {
+ super();
+ if (!AccessPointType.END_POINT.toString().equalsIgnoreCase(bindingTemplate.getAccessPointType())) {
+ log.error("AMQP enpoints only support AccessPointType " + AccessPointType.END_POINT);
+ }
+ String accessPointUrl = bindingTemplate.getAccessPointUrl().toLowerCase();
+ if (!accessPointUrl.startsWith("amqp:")) {
+ log.warn("AMQP accessPointUrl for bindingTemplate " + bindingTemplate.getEntityKey()
+ + " should start with 'amqp:'");
+ } else {
+ destination = accessPointUrl.substring(accessPointUrl.indexOf(":") + 1);
+
+ }
+ for (int i = 0; i < bindingTemplate.getTmodelInstanceInfos().size(); i++) {
+ if (bindingTemplate.getTmodelInstanceInfos().get(i).getTmodelKey().equals(Demo.TMODEL_DESTINATION_TYPE)) {
+ exchangeType = bindingTemplate.getTmodelInstanceInfos().get(i).getInstanceParms();
+ }
+ if (bindingTemplate.getTmodelInstanceInfos().get(i).getTmodelKey().equals(Demo.TMODEL_DESTINATION_NAME)) {
+ exchangeName = bindingTemplate.getTmodelInstanceInfos().get(i).getInstanceParms();
+ }
+ }
}
- }
- @Override
- public DispositionReport notifySubscriptionListener(NotifySubscriptionListener body) throws DispositionReportFaultMessage, RemoteException {
- Connection connection = null;
- Context context = null;
- boolean success = false;
- String err = null;
- try {
- if (destination != null) {
- log.info("Sending notification AMQP to " + destination);
- Properties properties = new Properties();
-
- properties.put("java.naming.factory.initial",
- AppConfig.getConfiguration().getString("amqp.java.naming.factory.initial", "org.apache.qpid.jndi.PropertiesFileInitialContextFactory"));
- properties.put("connectionfactory.qpidConnectionfactory", destination);
- properties.put("destination." +AppConfig.getConfiguration().getString("amqp.destination") ,
- AppConfig.getConfiguration().getString("amqp.destination.type"));
- //test only
- //properties.load(this.getClass().getResourceAsStream("hello.properties"));
- context = new InitialContext(properties);
-
- ConnectionFactory connectionFactory = (ConnectionFactory) context.lookup("qpidConnectionfactory");
- connection = connectionFactory.createConnection();
- connection.start();
-
- Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
- Destination destinationLocal = (Destination) context.lookup("UDDISubscriptionUpdates");
-
- MessageProducer messageProducer = session.createProducer(destinationLocal);
-
-
- String subscriptionResultXML = JAXBMarshaller.marshallToString(body, JAXBMarshaller.PACKAGE_SUBSCR_RES);
- TextMessage message = session.createTextMessage(subscriptionResultXML);
- messageProducer.send(message);
- success = true;
-
- }
- } catch (Exception e) {
- log.error(e.getMessage(), e);
- err = e.getMessage();
-
- } finally {
- try {
- connection.close();
- } catch (JMSException ex) {
- log.error(null, ex);
- }
- try {
- context.close();
- } catch (NamingException ex) {
- log.error(null, ex);
- }
- }
- if (!success) {
- throw new DispositionReportFaultMessage(err, null);
- }
- DispositionReport dr = new DispositionReport();
- Result res = new Result();
- dr.getResult().add(res);
+ @Override
+ public DispositionReport notifySubscriptionListener(NotifySubscriptionListener body) throws DispositionReportFaultMessage, RemoteException {
+ Connection connection = null;
+ Context context = null;
+ boolean success = false;
+ String err = null;
+ try {
+ if (destination != null && exchangeType != null && exchangeName != null) {
+ log.info("Sending notification AMQP to " + destination);
+ Properties properties = new Properties();
+
+ properties.put("java.naming.factory.initial", "org.apache.qpid.jndi.PropertiesFileInitialContextFactory");
+ properties.put("connectionfactory.qpidConnectionfactory", destination);
+ properties.put("destination." + exchangeName,exchangeType);
+
+ context = new InitialContext(properties);
+
+ ConnectionFactory connectionFactory = (ConnectionFactory) context.lookup("qpidConnectionfactory");
+ connection = connectionFactory.createConnection();
+ connection.start();
+
+ Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Destination destinationLocal = (Destination) context.lookup(exchangeName);
+
+ MessageProducer messageProducer = session.createProducer(destinationLocal);
+
+ String subscriptionResultXML = JAXBMarshaller.marshallToString(body, JAXBMarshaller.PACKAGE_SUBSCR_RES);
+ TextMessage message = session.createTextMessage(subscriptionResultXML);
+ messageProducer.send(message);
+ success = true;
+
+ }
+ } catch (Exception e) {
+ log.error("Error deliverying AMQP subscription " + e.getMessage());
+ log.debug("Error deliverying AMQP subscription " + e.getMessage(),e);
+ err = e.getMessage();
+
+ } finally {
+ try {
+ if (connection != null) {
+ connection.close();
+ }
+ } catch (JMSException ex) {
+ log.error(null, ex);
+ }
+ try {
+ if (context != null) {
+ context.close();
+ }
+ } catch (NamingException ex) {
+ log.error(null, ex);
+ }
+ }
+ if (!success) {
+ throw new DispositionReportFaultMessage(err, null);
+ }
+ DispositionReport dr = new DispositionReport();
+ Result res = new Result();
+ dr.getResult().add(res);
- return dr;
- }
+ return dr;
+ }
}
Added: juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/java/org/apache/juddi/subscription/notify/Demo.java
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/java/org/apache/juddi/subscription/notify/Demo.java?rev=1557594&view=auto
==============================================================================
--- juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/java/org/apache/juddi/subscription/notify/Demo.java (added)
+++ juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/java/org/apache/juddi/subscription/notify/Demo.java Sun Jan 12 18:57:43 2014
@@ -0,0 +1,218 @@
+/*
+ * Copyright 2014 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.juddi.subscription.notify;
+
+import java.util.Properties;
+import javax.jms.Connection;
+import javax.jms.ConnectionFactory;
+import javax.jms.Destination;
+import javax.jms.Message;
+import javax.jms.MessageConsumer;
+import javax.jms.MessageListener;
+import javax.jms.Session;
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.xml.datatype.DatatypeFactory;
+import org.apache.juddi.api_v3.AccessPointType;
+import org.apache.juddi.v3.client.UDDIConstants;
+import org.apache.juddi.v3.client.config.UDDIClerk;
+import org.apache.juddi.v3.client.config.UDDIClient;
+import org.apache.qpid.client.AMQAnyDestination;
+import org.apache.qpid.client.AMQConnection;
+import org.apache.qpid.client.AMQTopic;
+import org.uddi.api_v3.AccessPoint;
+import org.uddi.api_v3.BindingTemplate;
+import org.uddi.api_v3.BindingTemplates;
+import org.uddi.api_v3.BusinessEntity;
+import org.uddi.api_v3.BusinessService;
+import org.uddi.api_v3.BusinessServices;
+import org.uddi.api_v3.Description;
+import org.uddi.api_v3.FindBusiness;
+import org.uddi.api_v3.FindQualifiers;
+import org.uddi.api_v3.FindService;
+import org.uddi.api_v3.FindTModel;
+import org.uddi.api_v3.InstanceDetails;
+import org.uddi.api_v3.Name;
+import org.uddi.api_v3.TModel;
+import org.uddi.api_v3.TModelInstanceDetails;
+import org.uddi.api_v3.TModelInstanceInfo;
+import org.uddi.sub_v3.Subscription;
+import org.uddi.sub_v3.SubscriptionFilter;
+
+/**
+ *
+ * @author Alex O'Ree
+ */
+public class Demo implements MessageListener {
+
+ public static void main(String[] args) throws Exception {
+ System.out.println("Hello world!");
+ new Demo().Fire();
+ }
+
+ public static final String TOPIC="UDDI";
+ public static final String TMODEL_KEY_BASE = "uddi:amqptestdomain:";
+ public static final String TMODEL_KEY_TOPIC = TMODEL_KEY_BASE + ":topic";
+ public static final String TMODEL_DESTINATION_TYPE = TMODEL_KEY_BASE + "amqp.destination.type";
+ public static final String TMODEL_DESTINATION_NAME = TMODEL_KEY_BASE + "amqp.destination";
+
+ private void Fire() throws Exception {
+ String amqpURL = "amqp://guest:guest@clientid/?brokerlist='tcp://localhost:5672'";
+ UDDIClient client = new UDDIClient("META-INF/uddi.xml");
+ UDDIClerk clerk = client.getClerk("default");
+ String base = "uddi:amqptestdomain:";
+ String lang = "en";
+
+ TModel destinationType = new TModel();
+ destinationType.setName(new Name("AMQP Destination Type", lang));
+ destinationType.getDescription().add(new Description("topicExchange, queue, etc", lang));
+ destinationType.setTModelKey(TMODEL_DESTINATION_TYPE);
+
+ TModel destinationName = new TModel();
+ destinationName.setName(new Name("AMQP Destination Name", lang));
+ destinationName.getDescription().add(new Description("The name of the topic or queue", lang));
+ destinationName.setTModelKey(TMODEL_DESTINATION_NAME);
+
+ TModel createKeyGenator = UDDIClerk.createKeyGenator(base + "keygenerator", "AMQP Test Key domain", lang);
+ BusinessEntity be = new BusinessEntity();
+ be.setBusinessKey(base + "business");
+ be.getName().add(new Name("AMQP Test callbacks", lang));
+ be.setBusinessServices(new BusinessServices());
+ BusinessService bs = new BusinessService();
+ bs.setBindingTemplates(new BindingTemplates());
+ bs.setBusinessKey(base + "business");
+ bs.setServiceKey(base + "service");
+
+ BindingTemplate bt = new BindingTemplate();
+ bt.setBindingKey(base + "binding");
+ bt.setServiceKey(base + "service");
+ bt.setAccessPoint(new AccessPoint(amqpURL, AccessPointType.END_POINT.toString()));
+ bt.setTModelInstanceDetails(new TModelInstanceDetails());
+
+ TModelInstanceInfo version = UDDIClerk.createServiceInterfaceVersion("1.0", lang);
+ bt.getTModelInstanceDetails().getTModelInstanceInfo().add(version);
+
+ TModelInstanceInfo transport = new TModelInstanceInfo();
+ transport.setTModelKey(UDDIConstants.TRANSPORT_AMQP);
+ bt.getTModelInstanceDetails().getTModelInstanceInfo().add(transport);
+
+ TModelInstanceInfo topic = new TModelInstanceInfo();
+ topic.setTModelKey(TMODEL_DESTINATION_TYPE);
+ topic.setInstanceDetails(new InstanceDetails());
+ topic.getInstanceDetails().setInstanceParms("topicExchange");
+ bt.getTModelInstanceDetails().getTModelInstanceInfo().add(topic);
+
+ TModelInstanceInfo name = new TModelInstanceInfo();
+ name.setTModelKey(TMODEL_DESTINATION_NAME);
+ name.setInstanceDetails(new InstanceDetails());
+ name.getInstanceDetails().setInstanceParms(TOPIC);
+ bt.getTModelInstanceDetails().getTModelInstanceInfo().add(name);
+
+
+ bs.getBindingTemplates().getBindingTemplate().add(bt);
+
+ be.getBusinessServices().getBusinessService().add(bs);
+ try {
+ System.out.println("Registering tModel");
+ clerk.register(createKeyGenator);
+ System.out.println("Registering destination type tmodel");
+ clerk.register(destinationType);
+ System.out.println("Registering destination name tmodel");
+ clerk.register(destinationName);
+
+ System.out.println("Registering business with callback definition");
+ clerk.register(bs);
+
+ Properties p = new Properties();
+ p.setProperty("java.naming.factory.initial", "org.apache.qpid.jndi.PropertiesFileInitialContextFactory");
+ p.setProperty("connectionfactory.qpidConnectionfactory", amqpURL);
+ p.setProperty("destination.topicExchange", TOPIC);
+
+ System.out.println("Connecting to AMQP at " + amqpURL);
+
+ Context context = new InitialContext(p);
+
+ ConnectionFactory connectionFactory = (ConnectionFactory) context.lookup("topicExchange");
+ Connection connection = connectionFactory.createConnection();
+ connection.start();
+
+ Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ Destination destination = (Destination) context.lookup("topicExchange");
+
+ MessageConsumer consumer = session.createConsumer(destination);
+
+ consumer.setMessageListener(this);
+ System.out.println("Connected and listening...");
+
+ Subscription sub = new Subscription();
+ sub.setNotificationInterval(DatatypeFactory.newInstance().newDuration(1000));
+ sub.setBindingKey(base + "binding");
+ sub.setSubscriptionFilter(new SubscriptionFilter());
+ sub.getSubscriptionFilter().setFindBusiness(new FindBusiness());
+ sub.getSubscriptionFilter().getFindBusiness().setFindQualifiers(new FindQualifiers());
+ sub.getSubscriptionFilter().getFindBusiness().getFindQualifiers().getFindQualifier().add(UDDIConstants.APPROXIMATE_MATCH);
+ sub.getSubscriptionFilter().getFindBusiness().getName().add(new Name(UDDIConstants.WILDCARD, null));
+
+ Subscription subscriptionBiz = clerk.register(sub, clerk.getUDDINode().getApiNode());
+
+ System.out.println("Registered FindBusiness subscription key: " + (subscriptionBiz.getSubscriptionKey()) + " bindingkey: " + subscriptionBiz.getBindingKey());
+
+ sub = new Subscription();
+ sub.setNotificationInterval(DatatypeFactory.newInstance().newDuration(1000));
+ sub.setBindingKey(base + "binding");
+ sub.setSubscriptionFilter(new SubscriptionFilter());
+ sub.getSubscriptionFilter().setFindService(new FindService());
+ sub.getSubscriptionFilter().getFindService().setFindQualifiers(new FindQualifiers());
+ sub.getSubscriptionFilter().getFindService().getFindQualifiers().getFindQualifier().add(UDDIConstants.APPROXIMATE_MATCH);
+ sub.getSubscriptionFilter().getFindService().getName().add(new Name(UDDIConstants.WILDCARD, null));
+
+ Subscription subscriptionSvc = clerk.register(sub, clerk.getUDDINode().getApiNode());
+
+ System.out.println("Registered FindService subscription key: " + (subscriptionSvc.getSubscriptionKey()) + " bindingkey: " + subscriptionSvc.getBindingKey());
+
+ sub = new Subscription();
+ sub.setNotificationInterval(DatatypeFactory.newInstance().newDuration(1000));
+ sub.setBindingKey(base + "binding");
+ sub.setSubscriptionFilter(new SubscriptionFilter());
+ sub.getSubscriptionFilter().setFindTModel(new FindTModel());
+ sub.getSubscriptionFilter().getFindTModel().setFindQualifiers(new FindQualifiers());
+ sub.getSubscriptionFilter().getFindTModel().getFindQualifiers().getFindQualifier().add(UDDIConstants.APPROXIMATE_MATCH);
+ sub.getSubscriptionFilter().getFindTModel().setName(new Name(UDDIConstants.WILDCARD, null));
+
+ Subscription subscriptionTM = clerk.register(sub, clerk.getUDDINode().getApiNode());
+
+ System.out.println("Registered FindTModel subscription key: " + (subscriptionTM.getSubscriptionKey()) + " bindingkey: " + subscriptionTM.getBindingKey());
+
+ System.out.println("Waiting for callbacks. Now would be a good time to launch either another program or juddi-gui to make some changes. Press any key to stop!");
+
+ System.out.println("Listening, press any key to quit");
+ System.in.read();
+ connection.close();
+
+ } catch (Exception ex) {
+
+ } finally {
+ clerk.unRegisterBusiness(be.getBusinessKey());
+ clerk.unRegisterTModel(createKeyGenator.getTModelKey());
+ }
+ }
+
+ @Override
+ public void onMessage(Message msg) {
+
+ System.out.println("Message received: " + msg);
+ }
+}
Added: juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/resources/META-INF/uddi.xml
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/resources/META-INF/uddi.xml?rev=1557594&view=auto
==============================================================================
--- juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/resources/META-INF/uddi.xml (added)
+++ juddi/trunk/juddi-examples/subscription-notification-amqp/src/main/resources/META-INF/uddi.xml Sun Jan 12 18:57:43 2014
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<uddi xmlns="urn:juddi-apache-org:v3_client" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="classpath:/xsd/uddi-client.xsd">
+ <reloadDelay>5000</reloadDelay>
+ <client name="example-client">
+ <nodes>
+ <node>
+ <!-- required 'default' node -->
+ <name>default</name>
+ <properties>
+ <property name="serverName" value="localhost"/>
+ <property name="serverPort" value="8080"/>
+ <!-- for UDDI nodes that use HTTP u/p, using the following
+ <property name="basicAuthUsername" value="root" />
+ <property name="basicAuthPassword" value="password" />
+ <property name="basicAuthPasswordIsEncrypted" value="false" />
+ <property name="basicAuthPasswordCryptoProvider" value="org.apache.juddi.v3.client.crypto.AES128Cryptor (an example)" />-->
+ </properties>
+ <description>Main jUDDI node</description>
+ <!-- JAX-WS Transport -->
+ <proxyTransport>org.apache.juddi.v3.client.transport.JAXWSTransport</proxyTransport>
+ <custodyTransferUrl>http://${serverName}:${serverPort}/juddiv3/services/custody-transfer</custodyTransferUrl>
+ <inquiryUrl>http://${serverName}:${serverPort}/juddiv3/services/inquiry</inquiryUrl>
+ <inquiryRESTUrl>http://${serverName}:${serverPort}/juddiv3/services/inquiryRest</inquiryRESTUrl>
+ <publishUrl>http://${serverName}:${serverPort}/juddiv3/services/publish</publishUrl>
+ <securityUrl>http://${serverName}:${serverPort}/juddiv3/services/security</securityUrl>
+ <subscriptionUrl>http://${serverName}:${serverPort}/juddiv3/services/subscription</subscriptionUrl>
+ <subscriptionListenerUrl>http://${serverName}:${serverPort}/juddiv3/services/subscription-listener</subscriptionListenerUrl>
+ <juddiApiUrl>http://${serverName}:${serverPort}/juddiv3/services/juddi-api</juddiApiUrl>
+ </node>
+ </nodes>
+ <signature>
+ <!-- signing stuff -->
+ <signingKeyStorePath>keystore.jks</signingKeyStorePath>
+ <signingKeyStoreType>JKS</signingKeyStoreType>
+ <signingKeyStoreFilePassword
+ isPasswordEncrypted="false"
+ cryptoProvider="org.apache.juddi.v3.client.crypto.AES128Cryptor">password</signingKeyStoreFilePassword>
+ <signingKeyPassword
+ isPasswordEncrypted="false"
+ cryptoProvider="org.apache.juddi.v3.client.crypto.AES128Cryptor">password</signingKeyPassword>
+ <signingKeyAlias>my special key</signingKeyAlias>
+
+ <canonicalizationMethod>http://www.w3.org/2001/10/xml-exc-c14n#</canonicalizationMethod>
+ <signatureMethod>http://www.w3.org/2000/09/xmldsig#rsa-sha1</signatureMethod>
+ <XML_DIGSIG_NS>http://www.w3.org/2000/09/xmldsig#</XML_DIGSIG_NS>
+
+ <!-- validation stuff
+ Used whenever someone views an entity that is signed and validation is required -->
+ <!-- if this doesn't exist or is incorrect, the client will atempt to load the standard jdk trust store-->
+ <trustStorePath>truststore.jks</trustStorePath>
+ <trustStoreType>JKS</trustStoreType>
+ <trustStorePassword
+ isPasswordEncrypted="false"
+ cryptoProvider="org.apache.juddi.v3.client.crypto.AES128Cryptor">password</trustStorePassword>
+
+ <checkTimestamps>true</checkTimestamps>
+ <checkTrust>true</checkTrust>
+ <checkRevocationCRL>true</checkRevocationCRL>
+ <keyInfoInclusionSubjectDN>false</keyInfoInclusionSubjectDN>
+ <keyInfoInclusionSerial>false</keyInfoInclusionSerial>
+ <keyInfoInclusionBase64PublicKey>true</keyInfoInclusionBase64PublicKey>
+ <digestMethod>http://www.w3.org/2000/09/xmldsig#sha1</digestMethod>
+ </signature>
+ <subscriptionCallbacks>
+ <keyDomain>uddi:somebusiness</keyDomain>
+ <listenUrl>http://MyHostname:4444/callback</listenUrl>
+ <autoRegisterBindingTemplate>false</autoRegisterBindingTemplate>
+ <autoRegisterBusinessServiceKey>uddi:somebusiness:someservicekey</autoRegisterBusinessServiceKey>
+ <signatureBehavior>DoNothing</signatureBehavior>
+ <!--valid values are AbortIfSigned,Sign,DoNothing,SignOnlyIfParentIsntSigned, default is DoNothing-->
+ </subscriptionCallbacks>
+ <XtoWsdl>
+ <IgnoreSSLErrors>false</IgnoreSSLErrors>
+ </XtoWsdl>
+ </client>
+</uddi>
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org