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:[email protected]">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: [email protected]
For additional commands, e-mail: [email protected]