You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juddi.apache.org by ks...@apache.org on 2009/10/01 18:34:12 UTC

svn commit: r820709 - in /webservices/juddi/trunk: juddi-console/juddi-portal/ juddi-console/juddi-portal/pluto/WEB-INF/ juddi-console/uddi-portlets/ juddi-core/src/main/java/org/apache/juddi/api/impl/ juddi-core/src/main/java/org/apache/juddi/config/ ...

Author: kstam
Date: Thu Oct  1 16:34:10 2009
New Revision: 820709

URL: http://svn.apache.org/viewvc?rev=820709&view=rev
Log:
JUDDI-204, adding support to use a root publisher named something other then "root"

Removed:
    webservices/juddi/trunk/juddi-cxf/src/main/java/org/apache/juddi/
Modified:
    webservices/juddi/trunk/juddi-console/juddi-portal/pluto/WEB-INF/pluto-portal-driver-config.xml
    webservices/juddi/trunk/juddi-console/juddi-portal/tomcat-users.xml
    webservices/juddi/trunk/juddi-console/uddi-portlets/uddi-portlets.launch
    webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java
    webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/AppConfig.java
    webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Constants.java
    webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Install.java
    webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Property.java
    webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java
    webservices/juddi/trunk/juddi-core/src/test/java/org/apache/juddi/api/impl/API_010_PublisherTest.java
    webservices/juddi/trunk/juddi-core/src/test/resources/juddiv3.properties
    webservices/juddi/trunk/juddi-cxf/src/main/webapp/WEB-INF/classes/juddiv3.properties
    webservices/juddi/trunk/uddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java
    webservices/juddi/trunk/uddi-client/src/test/java/org/apache/juddi/v3/client/JUDDI_010_PublisherIntegrationTest.java

Modified: webservices/juddi/trunk/juddi-console/juddi-portal/pluto/WEB-INF/pluto-portal-driver-config.xml
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-console/juddi-portal/pluto/WEB-INF/pluto-portal-driver-config.xml?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-console/juddi-portal/pluto/WEB-INF/pluto-portal-driver-config.xml (original)
+++ webservices/juddi/trunk/juddi-console/juddi-portal/pluto/WEB-INF/pluto-portal-driver-config.xml Thu Oct  1 16:34:10 2009
@@ -49,7 +49,8 @@
     <page name="jUDDI Admin" uri="/WEB-INF/themes/pluto-default-theme.jsp">
       <portlet context="/uddi-portlets" name="JUDDIPublisherPortlet"/>
     </page>
-    <page name="jUDDI Subscription Logger" uri="/WEB-INF/themes/pluto-default-theme.jsp">
+    <page name="jUDDI Subscriptions" uri="/WEB-INF/themes/pluto-default-theme.jsp">
+      <portlet context="/uddi-portlets" name="UDDISubscriptionPortlet"/>
       <portlet context="/uddi-portlets" name="UDDISubscriptionNotificationPortlet"/>
     </page>
     <page name="Pluto Admin" uri="/WEB-INF/themes/pluto-default-theme.jsp">

Modified: webservices/juddi/trunk/juddi-console/juddi-portal/tomcat-users.xml
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-console/juddi-portal/tomcat-users.xml?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-console/juddi-portal/tomcat-users.xml (original)
+++ webservices/juddi/trunk/juddi-console/juddi-portal/tomcat-users.xml Thu Oct  1 16:34:10 2009
@@ -5,6 +5,8 @@
   <role rolename="role1"/>
   <role rolename="manager"/>
   <user username="root" password="root" roles="pluto,tomcat,manager"/>
+  <user username="affa" password="affa" roles="pluto"/>
+  <user username="uddi" password="uddi" roles="pluto"/>
   <user username="juddi" password="juddi" roles="pluto,tomcat,manager"/>
   <user username="pluto" password="pluto" roles="pluto,tomcat,manager"/>
   <user username="tomcat" password="tomcat" roles="tomcat,pluto,manager"/>

Modified: webservices/juddi/trunk/juddi-console/uddi-portlets/uddi-portlets.launch
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-console/uddi-portlets/uddi-portlets.launch?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-console/uddi-portlets/uddi-portlets.launch (original)
+++ webservices/juddi/trunk/juddi-console/uddi-portlets/uddi-portlets.launch Thu Oct  1 16:34:10 2009
@@ -64,11 +64,9 @@
 <listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/jUDDI/juddi-console/uddi-portlets/target/uddi-portlets-3.0.0.SNAPSHOT/WEB-INF/lib/uddi-ws-3.0.0.SNAPSHOT.jar&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#10;"/>
 <listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/juddi-console/uddi-portlets/src/main/resources&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#10;"/>
 </listAttribute>
-<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.maven.ide.eclipse.launchconfig.classpathProvider"/>
 <booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="false"/>
 <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="com.google.gwt.dev.GWTShell"/>
 <stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-out target/www org.apache.juddi.portlets.UDDIBrowser/UDDIBrowser.html"/>
 <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="juddi-console"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.maven.ide.eclipse.launchconfig.sourcepathProvider"/>
 <stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-XstartOnFirstThread -Xmx256M"/>
 </launchConfiguration>

Modified: webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java (original)
+++ webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java Thu Oct  1 16:34:10 2009
@@ -433,7 +433,7 @@
 			
 			UddiEntityPublisher publisher = this.getEntityPublisher(em, body.getAuthInfo());
 			
-			new ValidatePublish(publisher).validateSaveBinding(em, body);
+			new ValidatePublish(publisher).validateSaveBinding(em, body, null);
 	
 			BindingDetail result = new BindingDetail();
 			
@@ -474,7 +474,7 @@
 			
 			UddiEntityPublisher publisher = this.getEntityPublisher(em, body.getAuthInfo());
 			
-			new ValidatePublish(publisher).validateSaveBusiness(em, body);
+			new ValidatePublish(publisher).validateSaveBusiness(em, body, null);
 	
 			BusinessDetail result = new BusinessDetail();
 			
@@ -513,7 +513,7 @@
 	
 			UddiEntityPublisher publisher = this.getEntityPublisher(em, body.getAuthInfo());
 			
-			new ValidatePublish(publisher).validateSaveService(em, body);
+			new ValidatePublish(publisher).validateSaveService(em, body, null);
 			
 			ServiceDetail result = new ServiceDetail();
 	
@@ -554,7 +554,7 @@
 	
 			UddiEntityPublisher publisher = this.getEntityPublisher(em, body.getAuthInfo());
 	
-			new ValidatePublish(publisher).validateSaveTModel(em, body);
+			new ValidatePublish(publisher).validateSaveTModel(em, body, null);
 	
 			TModelDetail result = new TModelDetail();
 	

Modified: webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/AppConfig.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/AppConfig.java?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/AppConfig.java (original)
+++ webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/AppConfig.java Thu Oct  1 16:34:10 2009
@@ -103,7 +103,7 @@
 		try {
 			tx.begin();
 	
-			if (!Install.alreadyInstalled(em)) {
+			if (!Install.alreadyInstalled(em, config)) {
 				log.info("The 'root' publisher was not found, loading...");
 				try {
 					Install.install(config);
@@ -119,7 +119,8 @@
 			tx.commit();
 			tx.begin();
 	
-			UddiEntityPublisher  rootPublisher = new UddiEntityPublisher(Constants.ROOT_PUBLISHER);
+			String rootPublisherStr = config.getString(Property.JUDDI_ROOT_PUBLISHER);
+			UddiEntityPublisher  rootPublisher = new UddiEntityPublisher(rootPublisherStr);
 			rootPublisher.populateKeyGeneratorKeys(em);
 			List<String> rootKeyGenList = rootPublisher.getKeyGeneratorKeys();
 			if (rootKeyGenList == null || rootKeyGenList.size() == 0)

Modified: webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Constants.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Constants.java?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Constants.java (original)
+++ webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Constants.java Thu Oct  1 16:34:10 2009
@@ -23,8 +23,6 @@
  * @author <a href="mailto:jfaath@apache.org">Jeff Faath</a>
  */
 public class Constants {
-	public static final String ROOT_PUBLISHER = "root";
-	public static final String UDDI_PUBLISHER = "uddi";
 	
 	public static final String GENERAL_KEYWORD_TMODEL = "uddi:uddi-org:general_keywords";
 	public static final String NODE_CATEGORY_TMODEL = "uddi:uddi.org:categorization:nodes";

Modified: webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Install.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Install.java?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Install.java (original)
+++ webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Install.java Thu Oct  1 16:34:10 2009
@@ -59,45 +59,64 @@
  */
 public class Install {
 
-	public static final String FILE_ROOT_BUSINESSENTITY = "root_BusinessEntity.xml";
-	public static final String FILE_ROOT_PUBLISHER = "root_Publisher.xml";
-	public static final String FILE_ROOT_TMODELKEYGEN = "root_tModelKeyGen.xml";
-	public static final String FILE_UDDI_PUBLISHER = "UDDI_Publisher.xml";
-	public static final String FILE_UDDI_TMODELS = "UDDI_tModels.xml";
+	public static final String FILE_BUSINESSENTITY = "_BusinessEntity.xml";
+	public static final String FILE_PUBLISHER = "_Publisher.xml";
+	public static final String FILE_TMODELKEYGEN = "_tModelKeyGen.xml";
+	public static final String FILE_TMODELS = "_tModels.xml";
 	
 	public static final String FILE_PERSISTENCE = "persistence.xml";
 	public static final String JUDDI_INSTALL_DATA_DIR = "juddi_install_data/";
 	public static final String JUDDI_CUSTOM_INSTALL_DATA_DIR = "juddi_custom_install_data/";
 	public static Logger log = Logger.getLogger(Install.class);
 
+	@SuppressWarnings("unchecked")
 	protected static void install(Configuration config) throws JAXBException, DispositionReportFaultMessage, IOException, ConfigurationException {
 				
 		EntityManager em = PersistenceManager.getEntityManager();
 		EntityTransaction tx = em.getTransaction();
 		
 		UddiEntityPublisher rootPublisher = null;
-		UddiEntityPublisher uddiPublisher = null;
+		
 		try {
 			tx.begin();
 	
-			if (alreadyInstalled(em))
+			if (alreadyInstalled(em, config))
 				new FatalErrorException(new ErrorMessage("errors.install.AlreadyInstalled"));
 			
-			TModel rootTModelKeyGen = (TModel)buildInstallEntity(FILE_ROOT_TMODELKEYGEN, "org.uddi.api_v3", config);
-			org.uddi.api_v3.BusinessEntity rootBusinessEntity = (org.uddi.api_v3.BusinessEntity)buildInstallEntity(FILE_ROOT_BUSINESSENTITY, "org.uddi.api_v3",config);
+			String rootPublisherStr = config.getString(Property.JUDDI_ROOT_PUBLISHER);
+			String fileRootTModelKeygen = rootPublisherStr + FILE_TMODELKEYGEN;
+			TModel rootTModelKeyGen = (TModel)buildInstallEntity(fileRootTModelKeygen, "org.uddi.api_v3", config);
+			String fileRootBusinessEntity = rootPublisherStr + FILE_BUSINESSENTITY;
+			org.uddi.api_v3.BusinessEntity rootBusinessEntity = (org.uddi.api_v3.BusinessEntity)buildInstallEntity(fileRootBusinessEntity, "org.uddi.api_v3",config);
 			
 			String rootPartition = getRootPartition(rootTModelKeyGen);
 			String nodeId = getNodeId(rootBusinessEntity.getBusinessKey(), rootPartition);
 			
-			rootPublisher = installPublisher(em, FILE_ROOT_PUBLISHER, config);
-			uddiPublisher = installPublisher(em, FILE_UDDI_PUBLISHER, config);
-
+			String fileRootPublisher = rootPublisherStr + FILE_PUBLISHER;
+			rootPublisher = installPublisher(em, fileRootPublisher, config);
+			
 			installRootPublisherKeyGen(em, rootTModelKeyGen, rootPartition, rootPublisher, nodeId);
 
 			rootBusinessEntity.setBusinessKey(nodeId);
-			installRootBusinessEntity(em, rootBusinessEntity, rootPublisher, rootPartition);
-
-			installSaveTModel(em, FILE_UDDI_TMODELS, uddiPublisher, nodeId, config);
+			installBusinessEntity(true, em, rootBusinessEntity, rootPublisher, rootPartition, config);
+			
+			List<String> juddiPublishers = config.getList(Property.JUDDI_PUBLISHERS);
+			for (String publisherStr : juddiPublishers) {
+				String filePublisher = publisherStr + FILE_PUBLISHER;
+				String fileTModelKeygen = publisherStr + FILE_TMODELKEYGEN;
+				TModel tModelKeyGen = (TModel)buildInstallEntity(fileTModelKeygen, "org.uddi.api_v3", config);
+				String fileBusinessEntity = publisherStr + FILE_BUSINESSENTITY;
+				org.uddi.api_v3.BusinessEntity businessEntity = (org.uddi.api_v3.BusinessEntity)buildInstallEntity(fileBusinessEntity, "org.uddi.api_v3",config);
+				UddiEntityPublisher publisher = installPublisher(em, filePublisher, config);
+				if (publisher==null) {
+					throw new ConfigurationException("File " + filePublisher + " not found.");
+				} else {
+					if (tModelKeyGen!=null) installPublisherKeyGen(em, tModelKeyGen, publisher, nodeId);
+					if (businessEntity!=null) installBusinessEntity(false, em, businessEntity, publisher, null, config);
+					String fileTModels = publisherStr + FILE_TMODELS;
+					installSaveTModel(em, fileTModels, publisher, nodeId, config);
+				}
+			}
 			
 			tx.commit();
 		}
@@ -134,13 +153,13 @@
 		
 	}
 	
-	protected static boolean alreadyInstalled() {
+	protected static boolean alreadyInstalled(Configuration config) throws ConfigurationException {
 		EntityManager em = PersistenceManager.getEntityManager();
 		EntityTransaction tx = em.getTransaction();
 		try {
 			tx.begin();
 			
-			boolean result = alreadyInstalled(em);
+			boolean result = alreadyInstalled(em, config);
 			
 			tx.commit();
 			return result;
@@ -152,15 +171,21 @@
 		}
 	}
 
-	protected static boolean alreadyInstalled(EntityManager em) {
+	@SuppressWarnings("unchecked")
+	protected static boolean alreadyInstalled(EntityManager em, Configuration config) throws ConfigurationException {
 		
-		org.apache.juddi.model.Publisher publisher = em.find(org.apache.juddi.model.Publisher.class, Constants.ROOT_PUBLISHER);
+		String rootPublisherStr = config.getString(Property.JUDDI_ROOT_PUBLISHER);
+		org.apache.juddi.model.Publisher publisher = em.find(org.apache.juddi.model.Publisher.class, rootPublisherStr);
 		if (publisher != null)
 			return true;
 
-		publisher = em.find(org.apache.juddi.model.Publisher.class, Constants.UDDI_PUBLISHER);
-		if (publisher != null)
-			return true;
+		List<String> publishers = config.getList(Property.JUDDI_PUBLISHERS);
+		for (String publisherStr : publishers) {
+			publisher = em.find(org.apache.juddi.model.Publisher.class, publisherStr);
+			if (publisher != null)
+				return true;
+		}
+		
 		
 		return false;
 	}
@@ -211,10 +236,11 @@
 	
 	
 	
-	private static String installRootBusinessEntity(EntityManager em, org.uddi.api_v3.BusinessEntity rootBusinessEntity, UddiEntityPublisher rootPublisher, String rootPartition) 
+	private static String installBusinessEntity(boolean isRoot, EntityManager em, org.uddi.api_v3.BusinessEntity rootBusinessEntity, 
+			UddiEntityPublisher rootPublisher, String rootPartition, Configuration config) 
 	throws JAXBException, DispositionReportFaultMessage, IOException {
 		
-		validateRootBusinessEntity(rootBusinessEntity, rootPublisher, rootPartition);
+		if (isRoot) validateRootBusinessEntity(rootBusinessEntity, rootPublisher, rootPartition, config);
 		
 		org.apache.juddi.model.BusinessEntity modelBusinessEntity = new org.apache.juddi.model.BusinessEntity();
 		MappingApiToModel.mapBusinessEntity(rootBusinessEntity, modelBusinessEntity);
@@ -252,9 +278,11 @@
 
 	}
 	
+	
 	// A watered down version of ValidatePublish's validateBusinessEntity, designed for the specific condition that this is run upon the initial
 	// jUDDI install.
-	private static void validateRootBusinessEntity(org.uddi.api_v3.BusinessEntity businessEntity, UddiEntityPublisher rootPublisher, String rootPartition) 
+	private static void validateRootBusinessEntity(org.uddi.api_v3.BusinessEntity businessEntity, UddiEntityPublisher rootPublisher, 
+			String rootPartition, Configuration config)
 	throws DispositionReportFaultMessage {
 
 		// A supplied businessService can't be null
@@ -280,8 +308,8 @@
 		validatePublish.validateNames(businessEntity.getName());
 		validatePublish.validateDiscoveryUrls(businessEntity.getDiscoveryURLs());
 		validatePublish.validateContacts(businessEntity.getContacts());
-		validatePublish.validateCategoryBag(businessEntity.getCategoryBag());
-		validatePublish.validateIdentifierBag(businessEntity.getIdentifierBag());
+		validatePublish.validateCategoryBag(businessEntity.getCategoryBag(),config);
+		validatePublish.validateIdentifierBag(businessEntity.getIdentifierBag(),config);
 
 		org.uddi.api_v3.BusinessServices businessServices = businessEntity.getBusinessServices();
 		if (businessServices != null) {
@@ -290,7 +318,7 @@
 				throw new ValueNotAllowedException(new ErrorMessage("errors.businessservices.NoInput"));
 			
 			for (org.uddi.api_v3.BusinessService businessService : businessServiceList) {
-				validateRootBusinessService(businessService, businessEntity, rootPublisher, rootPartition);
+				validateRootBusinessService(businessService, businessEntity, rootPublisher, rootPartition, config);
 			}
 		}
 
@@ -298,7 +326,8 @@
 	
 	// A watered down version of ValidatePublish's validateBusinessService, designed for the specific condition that this is run upon the initial
 	// jUDDI install.
-	private static void validateRootBusinessService(org.uddi.api_v3.BusinessService businessService, org.uddi.api_v3.BusinessEntity parent, UddiEntityPublisher rootPublisher, String rootPartition) 
+	private static void validateRootBusinessService(org.uddi.api_v3.BusinessService businessService, org.uddi.api_v3.BusinessEntity parent, 
+			UddiEntityPublisher rootPublisher, String rootPartition, Configuration config)
 	throws DispositionReportFaultMessage {
 
 		// A supplied businessService can't be null
@@ -328,7 +357,7 @@
 		ValidatePublish validatePublish = new ValidatePublish(rootPublisher);
 		
 		validatePublish.validateNames(businessService.getName());
-		validatePublish.validateCategoryBag(businessService.getCategoryBag());
+		validatePublish.validateCategoryBag(businessService.getCategoryBag(), config);
 
 		org.uddi.api_v3.BindingTemplates bindingTemplates = businessService.getBindingTemplates();
 		if (bindingTemplates != null) {
@@ -337,14 +366,15 @@
 				throw new ValueNotAllowedException(new ErrorMessage("errors.bindingtemplates.NoInput"));
 			
 			for (org.uddi.api_v3.BindingTemplate bindingTemplate : bindingTemplateList) {
-				validateRootBindingTemplate(bindingTemplate, businessService, rootPublisher, rootPartition);
+				validateRootBindingTemplate(bindingTemplate, businessService, rootPublisher, rootPartition, config);
 			}
 		}
 	}
 
 	// A watered down version of ValidatePublish's validatBindingTemplate, designed for the specific condition that this is run upon the initial
 	// jUDDI install.
-	private static void validateRootBindingTemplate(org.uddi.api_v3.BindingTemplate bindingTemplate, org.uddi.api_v3.BusinessService parent, UddiEntityPublisher rootPublisher, String rootPartition) 
+	private static void validateRootBindingTemplate(org.uddi.api_v3.BindingTemplate bindingTemplate, org.uddi.api_v3.BusinessService parent, 
+			UddiEntityPublisher rootPublisher, String rootPartition, Configuration config) 
 	throws DispositionReportFaultMessage {
 
 		// A supplied businessService can't be null
@@ -373,7 +403,7 @@
 		
 		ValidatePublish validatePublish = new ValidatePublish(rootPublisher);
 		
-		validatePublish.validateCategoryBag(bindingTemplate.getCategoryBag());
+		validatePublish.validateCategoryBag(bindingTemplate.getCategoryBag(), config);
 		validatePublish.validateTModelInstanceDetails(bindingTemplate.getTModelInstanceDetails());
 
 	}
@@ -439,14 +469,19 @@
 		
 		// First try the custom install directory
 		URL url = Thread.currentThread().getContextClassLoader().getResource(JUDDI_CUSTOM_INSTALL_DATA_DIR + fileName);
-		if (url != null)
-			resourceStream = url.openStream();
+		if (url != null) resourceStream = url.openStream();
 		
 		// If the custom install directory doesn't exist, then use the standard install directory where the resource is guaranteed to exist.
 		if (resourceStream == null) {
 			url = Thread.currentThread().getContextClassLoader().getResource(JUDDI_INSTALL_DATA_DIR + fileName);
-			resourceStream = url.openStream();
+			if (url != null) resourceStream = url.openStream();
 		}
+		
+		// If file still does not exist then return null;
+		if (resourceStream == null) {
+			return null;
+		}
+		
 		StringBuilder xml = new StringBuilder();
 	    byte[] b = new byte[4096];
 	    for (int n; (n = resourceStream.read(b)) != -1;) {
@@ -525,7 +560,7 @@
 		throws JAXBException, DispositionReportFaultMessage, IOException, ConfigurationException {
 
 		SaveTModel apiSaveTModel = (SaveTModel)buildInstallEntity(fileName, "org.uddi.api_v3", config);
-		installTModels(em, apiSaveTModel.getTModel(), publisher, nodeId);
+		if (apiSaveTModel!=null) installTModels(em, apiSaveTModel.getTModel(), publisher, nodeId);
 	}
 
 	/**
@@ -543,6 +578,7 @@
 		throws JAXBException, DispositionReportFaultMessage, IOException, ConfigurationException {
 
 		org.apache.juddi.api_v3.Publisher apiPub = (org.apache.juddi.api_v3.Publisher)buildInstallEntity(fileName, "org.apache.juddi.api_v3", config);
+		if (apiPub==null) return null;
 		org.apache.juddi.model.Publisher modelPub = new org.apache.juddi.model.Publisher();
 		MappingApiToModel.mapPublisher(apiPub, modelPub);
 		em.persist(modelPub);

Modified: webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Property.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Property.java?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Property.java (original)
+++ webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/config/Property.java Thu Oct  1 16:34:10 2009
@@ -2,7 +2,8 @@
 
 public interface Property 
 {
-
+    public final static String JUDDI_ROOT_PUBLISHER              ="juddi.root.publisher";
+    public final static String JUDDI_PUBLISHERS                  ="juddi.publishers";
 	public final static String JUDDI_PERSISTENCEUNIT_NAME        ="juddi.persistenceunit.name";
 	public final static String JUDDI_AUTHENTICATOR               ="juddi.authenticator";
 	public final static String JUDDI_CONFIGURATION_RELOAD_DELAY  ="juddi.configuration.reload.delay";

Modified: webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java (original)
+++ webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java Thu Oct  1 16:34:10 2009
@@ -23,9 +23,13 @@
 import javax.persistence.EntityManager;
 import javax.xml.ws.Holder;
 
+import org.apache.commons.configuration.Configuration;
+import org.apache.commons.configuration.ConfigurationException;
 import org.apache.juddi.api_v3.DeletePublisher;
 import org.apache.juddi.api_v3.SavePublisher;
+import org.apache.juddi.config.AppConfig;
 import org.apache.juddi.config.Constants;
+import org.apache.juddi.config.Property;
 import org.apache.juddi.error.AssertionNotFoundException;
 import org.apache.juddi.error.ErrorMessage;
 import org.apache.juddi.error.FatalErrorException;
@@ -39,6 +43,7 @@
 import org.apache.juddi.model.Publisher;
 import org.apache.juddi.model.UddiEntity;
 import org.apache.juddi.model.UddiEntityPublisher;
+import org.apache.log4j.Logger;
 import org.uddi.api_v3.AddPublisherAssertions;
 import org.uddi.api_v3.DeleteBinding;
 import org.uddi.api_v3.DeleteBusiness;
@@ -62,6 +67,8 @@
  */
 public class ValidatePublish extends ValidateUDDIApi {
 
+	Logger log = Logger.getLogger(this.getClass());
+	
 	public ValidatePublish(UddiEntityPublisher publisher) {
 		super(publisher);
 	}
@@ -211,8 +218,15 @@
 	}
 
 	
-	public void validateSaveBusiness(EntityManager em, SaveBusiness body) throws DispositionReportFaultMessage {
+	public void validateSaveBusiness(EntityManager em, SaveBusiness body, Configuration config) throws DispositionReportFaultMessage {
 
+		if (config==null) {
+			try {
+				config = AppConfig.getConfiguration();
+			} catch (ConfigurationException ce){
+				log.error("Could not optain config. " + ce.getMessage(), ce);
+			}
+		}
 		// No null input
 		if (body == null)
 			throw new FatalErrorException(new ErrorMessage("errors.NullInput"));
@@ -223,12 +237,19 @@
 			throw new ValueNotAllowedException(new ErrorMessage("errors.savebusiness.NoInput"));
 		
 		for (org.uddi.api_v3.BusinessEntity entity : entityList) {
-			validateBusinessEntity(em, entity);
+			validateBusinessEntity(em, entity, config);
 		}
 	}
 	
-	public void validateSaveService(EntityManager em, SaveService body) throws DispositionReportFaultMessage {
+	public void validateSaveService(EntityManager em, SaveService body, Configuration config) throws DispositionReportFaultMessage {
 
+		if (config==null) {
+			try {
+				config = AppConfig.getConfiguration();
+			} catch (ConfigurationException ce){
+				log.error("Could not optain config. " + ce.getMessage(), ce);
+			}
+		}
 		// No null input
 		if (body == null)
 			throw new FatalErrorException(new ErrorMessage("errors.NullInput"));
@@ -240,12 +261,19 @@
 		
 		for (org.uddi.api_v3.BusinessService entity : entityList) {
 			// Entity specific data validation
-			validateBusinessService(em, entity, null);
+			validateBusinessService(em, entity, null, config);
 		}
 	}
 	
-	public void validateSaveBinding(EntityManager em, SaveBinding body) throws DispositionReportFaultMessage {
+	public void validateSaveBinding(EntityManager em, SaveBinding body, Configuration config) throws DispositionReportFaultMessage {
 
+		if (config==null) {
+			try {
+				config = AppConfig.getConfiguration();
+			} catch (ConfigurationException ce){
+				log.error("Could not optain config. " + ce.getMessage(), ce);
+			}
+		}
 		// No null input
 		if (body == null)
 			throw new FatalErrorException(new ErrorMessage("errors.NullInput"));
@@ -256,12 +284,19 @@
 			throw new ValueNotAllowedException(new ErrorMessage("errors.savebinding.NoInput"));
 		
 		for (org.uddi.api_v3.BindingTemplate entity : entityList) {
-			validateBindingTemplate(em, entity, null);
+			validateBindingTemplate(em, entity, null, config);
 		}
 	}
 
-	public void validateSaveTModel(EntityManager em, SaveTModel body) throws DispositionReportFaultMessage {
+	public void validateSaveTModel(EntityManager em, SaveTModel body, Configuration config) throws DispositionReportFaultMessage {
 
+		if (config==null) {
+			try {
+				config = AppConfig.getConfiguration();
+			} catch (ConfigurationException ce){
+				log.error("Could not optain config. " + ce.getMessage(), ce);
+			}
+		}
 		// No null input
 		if (body == null)
 			throw new FatalErrorException(new ErrorMessage("errors.NullInput"));
@@ -272,7 +307,7 @@
 			throw new ValueNotAllowedException(new ErrorMessage("errors.savetmodel.NoInput"));
 		
 		for (org.uddi.api_v3.TModel entity : entityList) {
-			validateTModel(em, entity);
+			validateTModel(em, entity, config);
 		}
 	}
 
@@ -308,7 +343,7 @@
 		}
 	}
 	
-	public void validateBusinessEntity(EntityManager em, org.uddi.api_v3.BusinessEntity businessEntity) throws DispositionReportFaultMessage {
+	public void validateBusinessEntity(EntityManager em, org.uddi.api_v3.BusinessEntity businessEntity, Configuration config) throws DispositionReportFaultMessage {
 		
 		// A supplied businessEntity can't be null
 		if (businessEntity == null)
@@ -356,14 +391,14 @@
 		validateNames(businessEntity.getName());
 		validateDiscoveryUrls(businessEntity.getDiscoveryURLs());
 		validateContacts(businessEntity.getContacts());
-		validateCategoryBag(businessEntity.getCategoryBag());
-		validateIdentifierBag(businessEntity.getIdentifierBag());
+		validateCategoryBag(businessEntity.getCategoryBag(), config);
+		validateIdentifierBag(businessEntity.getIdentifierBag(), config);
 
-		validateBusinessServices(em, businessEntity.getBusinessServices(), businessEntity);
+		validateBusinessServices(em, businessEntity.getBusinessServices(), businessEntity, config);
 		
 	}
 
-	public void validateBusinessServices(EntityManager em, org.uddi.api_v3.BusinessServices businessServices, org.uddi.api_v3.BusinessEntity parent) 
+	public void validateBusinessServices(EntityManager em, org.uddi.api_v3.BusinessServices businessServices, org.uddi.api_v3.BusinessEntity parent, Configuration config)
 					throws DispositionReportFaultMessage {
 		// Business services is optional
 		if (businessServices == null)
@@ -374,12 +409,12 @@
 			throw new ValueNotAllowedException(new ErrorMessage("errors.businessservices.NoInput"));
 		
 		for (org.uddi.api_v3.BusinessService businessService : businessServiceList) {
-			validateBusinessService(em, businessService, parent);
+			validateBusinessService(em, businessService, parent, config);
 		}
 			
 	}
 
-	public void validateBusinessService(EntityManager em, org.uddi.api_v3.BusinessService businessService, org.uddi.api_v3.BusinessEntity parent) 
+	public void validateBusinessService(EntityManager em, org.uddi.api_v3.BusinessService businessService, org.uddi.api_v3.BusinessEntity parent, Configuration config) 
 					throws DispositionReportFaultMessage {
 
 		// A supplied businessService can't be null
@@ -508,14 +543,14 @@
 			// TODO: validate "checked" categories or category groups (see section 5.2.3 of spec)? optional to support
 			
 			validateNames(businessService.getName());
-			validateCategoryBag(businessService.getCategoryBag());
+			validateCategoryBag(businessService.getCategoryBag(), config);
 			
-			validateBindingTemplates(em, businessService.getBindingTemplates(), businessService);
+			validateBindingTemplates(em, businessService.getBindingTemplates(), businessService, config);
 		}
 		
 	}
 
-	public void validateBindingTemplates(EntityManager em, org.uddi.api_v3.BindingTemplates bindingTemplates, org.uddi.api_v3.BusinessService parent) 
+	public void validateBindingTemplates(EntityManager em, org.uddi.api_v3.BindingTemplates bindingTemplates, org.uddi.api_v3.BusinessService parent, Configuration config)
 					throws DispositionReportFaultMessage {
 		// Binding templates is optional
 		if (bindingTemplates == null)
@@ -526,12 +561,13 @@
 			throw new ValueNotAllowedException(new ErrorMessage("errors.bindingtemplates.NoInput"));
 	
 		for (org.uddi.api_v3.BindingTemplate bindingTemplate : bindingTemplateList) {
-			validateBindingTemplate(em, bindingTemplate, parent);
+			validateBindingTemplate(em, bindingTemplate, parent, config);
 		}
 	
 	}
 	
-	public void validateBindingTemplate(EntityManager em, org.uddi.api_v3.BindingTemplate bindingTemplate, org.uddi.api_v3.BusinessService parent) 
+	public void validateBindingTemplate(EntityManager em, org.uddi.api_v3.BindingTemplate bindingTemplate, 
+			org.uddi.api_v3.BusinessService parent, Configuration config) 
 					throws DispositionReportFaultMessage {
 
 		// A supplied bindingTemplate can't be null
@@ -642,13 +678,13 @@
 		if (bindingTemplate.getAccessPoint() == null)
 			throw new ValueNotAllowedException(new ErrorMessage("errors.bindingtemplate.NoAccessPoint"));
 		
-		validateCategoryBag(bindingTemplate.getCategoryBag());
+		validateCategoryBag(bindingTemplate.getCategoryBag(), config);
 		validateTModelInstanceDetails(bindingTemplate.getTModelInstanceDetails());
 		
 		
 	}
 
-	public void validateTModel(EntityManager em, org.uddi.api_v3.TModel tModel) throws DispositionReportFaultMessage {
+	public void validateTModel(EntityManager em, org.uddi.api_v3.TModel tModel, Configuration config) throws DispositionReportFaultMessage {
 		// A supplied tModel can't be null
 		if (tModel == null)
 			throw new ValueNotAllowedException(new ErrorMessage("errors.tmodel.NullInput"));
@@ -682,7 +718,13 @@
 					ValidateUDDIKey.validateUDDIv3KeyGeneratorTModel(tModel);
 					
 					// The root publisher is only allowed one key generator.  This is published in the installation.
-					if (publisher.getAuthorizedName().equals(Constants.ROOT_PUBLISHER))
+					String rootPublisherStr = "root";
+					try {
+						rootPublisherStr = AppConfig.getConfiguration().getString(Property.JUDDI_ROOT_PUBLISHER);
+					} catch (ConfigurationException ce) {
+						log.error("Could not read the root publisher setting in the configuration.");
+					}
+					if (publisher.getAuthorizedName().equals(rootPublisherStr))
 						throw new FatalErrorException(new ErrorMessage("errors.tmodel.keygenerator.RootKeyGen"));
 					
 					// It's a valid Key Generator, but is it available for this publisher?
@@ -710,8 +752,8 @@
 		if (tModel.getName() == null)
 			throw new ValueNotAllowedException(new ErrorMessage("errors.tmodel.NoName"));
 		
-		validateCategoryBag(tModel.getCategoryBag());
-		validateIdentifierBag(tModel.getIdentifierBag());
+		validateCategoryBag(tModel.getCategoryBag(), config);
+		validateIdentifierBag(tModel.getIdentifierBag(), config);
 
 		List<org.uddi.api_v3.OverviewDoc> overviewDocList = tModel.getOverviewDoc();
 		if (overviewDocList != null) {
@@ -818,7 +860,7 @@
 			throw new ValueNotAllowedException(new ErrorMessage("errors.discurls.NoInput"));
 	}	
 	
-	public void validateCategoryBag(org.uddi.api_v3.CategoryBag categories) throws DispositionReportFaultMessage {
+	public void validateCategoryBag(org.uddi.api_v3.CategoryBag categories, Configuration config) throws DispositionReportFaultMessage {
 		
 		// Category bag is optional
 		if (categories == null)
@@ -832,12 +874,12 @@
 		
 		for (Object elem : elems) {
 			if (elem instanceof org.uddi.api_v3.KeyedReference) {
-				validateKeyedReference((KeyedReference) elem);
+				validateKeyedReference((KeyedReference) elem, config);
 			}
 		}
 	}
 
-	public void validateIdentifierBag(org.uddi.api_v3.IdentifierBag identifiers) throws DispositionReportFaultMessage {
+	public void validateIdentifierBag(org.uddi.api_v3.IdentifierBag identifiers, Configuration config) throws DispositionReportFaultMessage {
 		
 		// Identifier bag is optional
 		if (identifiers == null)
@@ -849,7 +891,7 @@
 			throw new ValueNotAllowedException(new ErrorMessage("errors.identifierbag.NoInput"));
 		
 		for (org.uddi.api_v3.KeyedReference keyedRef : keyedRefList) {
-			validateKeyedReference(keyedRef);
+			validateKeyedReference(keyedRef, config);
 		}
 	}
 	
@@ -860,16 +902,17 @@
 			throw new ValueNotAllowedException(new ErrorMessage("errors.keyedreference.NoTModelKey"));
 	}
 	
-	public void validateKeyedReference(KeyedReference kr) throws DispositionReportFaultMessage {
+	public void validateKeyedReference(KeyedReference kr, Configuration config) throws DispositionReportFaultMessage {
 		if (kr.getTModelKey() == null || kr.getTModelKey().length() == 0)
 			throw new ValueNotAllowedException(new ErrorMessage("errors.keyedreference.NoTModelKey"));
 			
 		if (kr.getKeyValue() == null || kr.getKeyValue().length() == 0)
 			throw new ValueNotAllowedException(new ErrorMessage("errors.keyedreference.NoKeyValue"));
 			
+		String rootPublisherStr = config.getString(Property.JUDDI_ROOT_PUBLISHER);
 		// Per section 6.2.2.1 of the specification, no publishers (except the root) are allowed to use the node categorization tmodelKey
 		if (Constants.NODE_CATEGORY_TMODEL.equalsIgnoreCase(kr.getTModelKey())) {
-			if (!Constants.ROOT_PUBLISHER.equals(publisher.getAuthorizedName()))
+			if (!rootPublisherStr.equals(publisher.getAuthorizedName()))
 				throw new ValueNotAllowedException(new ErrorMessage("errors.keyedreference.NodeCategoryTModel", Constants.NODE_CATEGORY_TMODEL));
 		}
 	}

Modified: webservices/juddi/trunk/juddi-core/src/test/java/org/apache/juddi/api/impl/API_010_PublisherTest.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/test/java/org/apache/juddi/api/impl/API_010_PublisherTest.java?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/test/java/org/apache/juddi/api/impl/API_010_PublisherTest.java (original)
+++ webservices/juddi/trunk/juddi-core/src/test/java/org/apache/juddi/api/impl/API_010_PublisherTest.java Thu Oct  1 16:34:10 2009
@@ -26,7 +26,8 @@
 import org.apache.juddi.api_v3.Publisher;
 import org.apache.juddi.api_v3.PublisherDetail;
 import org.apache.juddi.api_v3.SavePublisher;
-import org.apache.juddi.config.Constants;
+import org.apache.juddi.config.AppConfig;
+import org.apache.juddi.config.Property;
 import org.apache.juddi.error.InvalidKeyPassedException;
 import org.apache.juddi.v3.tck.EntityCreator;
 import org.apache.juddi.v3.tck.TckPublisher;
@@ -124,7 +125,8 @@
 	
 	private void savePublisher(String publisherId, String publisherXML) {
 		try {
-			authInfo = TckSecurity.getAuthToken(security, Constants.ROOT_PUBLISHER, "");
+			String rootPublisherStr = AppConfig.getConfiguration().getString(Property.JUDDI_ROOT_PUBLISHER);
+			authInfo = TckSecurity.getAuthToken(security, rootPublisherStr, "");
 			logger.debug("Saving new publisher: " + publisherXML);
 			SavePublisher sp = new SavePublisher();
 			sp.setAuthInfo(authInfo);
@@ -169,7 +171,8 @@
 	
 	private void deletePublisher(String publisherId) {
 		try {
-			authInfo = TckSecurity.getAuthToken(security, Constants.ROOT_PUBLISHER, "");
+			String rootPublisherStr = AppConfig.getConfiguration().getString(Property.JUDDI_ROOT_PUBLISHER);
+			authInfo = TckSecurity.getAuthToken(security, rootPublisherStr, "");
 			logger.debug("Delete publisher: " + publisherId);
 			//Now deleting this publisher
 			DeletePublisher dp = new DeletePublisher();

Modified: webservices/juddi/trunk/juddi-core/src/test/resources/juddiv3.properties
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/test/resources/juddiv3.properties?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/test/resources/juddiv3.properties (original)
+++ webservices/juddi/trunk/juddi-core/src/test/resources/juddiv3.properties Thu Oct  1 16:34:10 2009
@@ -10,6 +10,9 @@
 # System parameters.
 juddi.server.name=localhost
 juddi.server.port=8080
+
+juddi.root.publisher=root
+juddi.publishers=UDDI
 #
 # Name of the persistence unit to use (the default, "juddiDatabase" refers to the unit compiled into the juddi library)
 juddi.persistenceunit.name=juddiDatabase

Modified: webservices/juddi/trunk/juddi-cxf/src/main/webapp/WEB-INF/classes/juddiv3.properties
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-cxf/src/main/webapp/WEB-INF/classes/juddiv3.properties?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-cxf/src/main/webapp/WEB-INF/classes/juddiv3.properties (original)
+++ webservices/juddi/trunk/juddi-cxf/src/main/webapp/WEB-INF/classes/juddiv3.properties Thu Oct  1 16:34:10 2009
@@ -6,6 +6,9 @@
 #                                                              #
 ################################################################
 #
+juddi.root.publisher=root
+juddi.publishers=UDDI
+#
 # Name of the persistence unit to use (the default, "juddiDatabase" refers to the unit compiled into the juddi library)
 juddi.persistenceunit.name=juddiDatabase
 #

Modified: webservices/juddi/trunk/uddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/uddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/uddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java (original)
+++ webservices/juddi/trunk/uddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java Thu Oct  1 16:34:10 2009
@@ -192,12 +192,6 @@
 	}
 	
 	public Map<String, UDDINode> getNodes() {
-		try {
-			getInstance();
-		} catch (ConfigurationException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
 		return nodes;
 	}
 	public Map<String,UDDIClerk> getClerks() {

Modified: webservices/juddi/trunk/uddi-client/src/test/java/org/apache/juddi/v3/client/JUDDI_010_PublisherIntegrationTest.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/uddi-client/src/test/java/org/apache/juddi/v3/client/JUDDI_010_PublisherIntegrationTest.java?rev=820709&r1=820708&r2=820709&view=diff
==============================================================================
--- webservices/juddi/trunk/uddi-client/src/test/java/org/apache/juddi/v3/client/JUDDI_010_PublisherIntegrationTest.java (original)
+++ webservices/juddi/trunk/uddi-client/src/test/java/org/apache/juddi/v3/client/JUDDI_010_PublisherIntegrationTest.java Thu Oct  1 16:34:10 2009
@@ -29,7 +29,8 @@
 import org.apache.juddi.api_v3.Publisher;
 import org.apache.juddi.api_v3.PublisherDetail;
 import org.apache.juddi.api_v3.SavePublisher;
-import org.apache.juddi.config.Constants;
+import org.apache.juddi.config.AppConfig;
+import org.apache.juddi.config.Property;
 import org.apache.juddi.error.InvalidKeyPassedException;
 import org.apache.juddi.v3.client.config.ClientConfig;
 import org.apache.juddi.v3.client.transport.InVMTransport;
@@ -191,7 +192,8 @@
  	
  	private void savePublisher(String publisherId, String publisherXML) {
 		try {
-			authInfo = TckSecurity.getAuthToken(security, Constants.ROOT_PUBLISHER, "");
+			String rootPublisherStr = AppConfig.getConfiguration().getString(Property.JUDDI_ROOT_PUBLISHER);
+			authInfo = TckSecurity.getAuthToken(security, rootPublisherStr, "");
 			logger.debug("Saving new publisher: " + publisherXML);
 			SavePublisher sp = new SavePublisher();
 			sp.setAuthInfo(authInfo);
@@ -236,7 +238,8 @@
 	
 	private void deletePublisher(String publisherId) {
 		try {
-			authInfo = TckSecurity.getAuthToken(security, Constants.ROOT_PUBLISHER, "");
+			String rootPublisherStr = AppConfig.getConfiguration().getString(Property.JUDDI_ROOT_PUBLISHER);
+			authInfo = TckSecurity.getAuthToken(security, rootPublisherStr, "");
 			logger.debug("Delete publisher: " + publisherId);
 			//Now deleting this publisher
 			DeletePublisher dp = new DeletePublisher();



---------------------------------------------------------------------
To unsubscribe, e-mail: juddi-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: juddi-cvs-help@ws.apache.org