Modified: juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/validation/ValidateValueSetValidation.java URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/validation/ValidateValueSetValidation.java?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/validation/ValidateValueSetValidation.java (original) +++ juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/validation/ValidateValueSetValidation.java Tue Dec 10 19:24:33 2013 @@ -67,8 +67,8 @@ public class ValidateValueSetValidation throw new ValueNotAllowedException(new ErrorMessage("errors.invalidkey.TModelNotFound", key)); } //ensure caller owns the tModel - if (this.publisher.isOwner(tm)) { - throw new ValueNotAllowedException(new ErrorMessage("errors.usermismatch.InvalidOwner", key)); + if (!this.publisher.isOwner(tm)) { + throw new ValueNotAllowedException(new ErrorMessage("errors.usermismatch.InvalidOwner", key )); } //if we have no values, it may be to simply unset any values
Modified: juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/validation/ValidateValuesFromWebService.java URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/validation/ValidateValuesFromWebService.java?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/validation/ValidateValuesFromWebService.java (original) +++ juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/validation/ValidateValuesFromWebService.java Tue Dec 10 19:24:33 2013 @@ -13,42 +13,139 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.juddi.validation; -import javax.xml.ws.Binding; import javax.xml.ws.BindingProvider; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.apache.juddi.api.impl.UDDIValueSetValidationImpl; +import org.apache.juddi.config.Property; +import org.apache.juddi.v3.client.UDDIConstants; import org.apache.juddi.v3.client.UDDIService; import org.apache.juddi.v3.error.ErrorMessage; import org.apache.juddi.v3.error.ValueNotAllowedException; +import org.uddi.api_v3.BindingTemplate; +import org.uddi.api_v3.BusinessEntity; +import org.uddi.api_v3.BusinessService; import org.uddi.api_v3.DispositionReport; +import org.uddi.api_v3.PublisherAssertion; import org.uddi.api_v3.TModel; import org.uddi.v3_service.UDDIValueSetValidationPortType; import org.uddi.vs_v3.ValidateValues; /** + * This class handles when this UDDI server receives some kind of SaveXXX + * Publish API request and the request uses a tModel KeyedReference that is both + * "checked" and has a UDDIConstants.IS_VALIDATED_BY property. The value of the + * IS_VALIDATED_BY reference points to a BindingTemplate which should in turn + * point to a Web Service that handles validation requests for the tModel + * KeyedReferences. + * + * Short Story long, this class handles the external callout. It also handles + * classpath:/ URLs (which is currently just jUDDI's implementation of VSV * * @author Alex O'Ree + * @see UDDIConstants.IS_VALIDATED_BY + * @since 3.3 */ public class ValidateValuesFromWebService { static final Log log = LogFactory.getLog(ValidateValuesFromWebService.class); - public static void Validate(String url, Object tm) throws ValueNotAllowedException{ + + private static UDDIValueSetValidationPortType getPort(String url) throws ValueNotAllowedException { UDDIService svc = new UDDIService(); UDDIValueSetValidationPortType vsv = svc.getUDDIValueSetValidationPort(); - ((BindingProvider)vsv).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, url); + + if (url == null || url.trim().length() == 0) { + log.error("VSV Validation Failed: Cannot locate class from url null"); + ValueNotAllowedException x = new ValueNotAllowedException(new ErrorMessage("errors.valuesetvalidation.invalidurl")); + throw x; + } + if (url.startsWith(Property.DEFAULT_BASE_URL) + || url.startsWith(Property.DEFAULT_BASE_URL_SECURE)) { + vsv = new UDDIValueSetValidationImpl(); + + } + if (url.startsWith("classpath:")) { + try { + String clz = url.substring(11); + Class<UDDIValueSetValidationPortType> forName = (Class<UDDIValueSetValidationPortType>) Class.forName(clz); + vsv = forName.newInstance(); + } catch (Exception ex) { + log.error("VSV Validation Failed: Cannot locate class from url " + url, ex); + } + } else { + //external service, stick with + log.info("Calling External VSV Service"); + ((BindingProvider) vsv).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, url); + } + return vsv; + } + + public static void Validate(String url, BusinessEntity obj) throws ValueNotAllowedException { + + UDDIValueSetValidationPortType vsv=getPort(url); + ValidateValues req = new ValidateValues(); + req.getBusinessEntity().add(obj); + + try { + DispositionReport validateValues = vsv.validateValues(req); + //TODO parse + } catch (Exception ex) { + log.error("VSV Validation Failed: Cannot locate class from url " + url, ex); + ValueNotAllowedException x = new ValueNotAllowedException(new ErrorMessage("errors.valuesetvalidation.invalidcontent", ex.getMessage())); + throw x; + } + } + + public static void Validate(String url, TModel obj) throws ValueNotAllowedException { + UDDIValueSetValidationPortType vsv=getPort(url); + ValidateValues req = new ValidateValues(); + req.getTModel().add(obj); + + try { + DispositionReport validateValues = vsv.validateValues(req); + } catch (Exception ex) { + log.warn(ex); + ValueNotAllowedException x = new ValueNotAllowedException(new ErrorMessage("errors.valuesetvalidation.invalidcontent", ex.getMessage())); + } + } + + public static void Validate(String url, BusinessService obj) throws ValueNotAllowedException { + UDDIValueSetValidationPortType vsv=getPort(url); + ValidateValues req = new ValidateValues(); + req.getBusinessService().add(obj); + + try { + DispositionReport validateValues = vsv.validateValues(req); + } catch (Exception ex) { + log.warn(ex); + ValueNotAllowedException x = new ValueNotAllowedException(new ErrorMessage("errors.valuesetvalidation.invalidcontent", ex.getMessage())); + } + } + + public static void Validate(String url, BindingTemplate obj) throws ValueNotAllowedException { + UDDIValueSetValidationPortType vsv=getPort(url); + ValidateValues req = new ValidateValues(); + req.getBindingTemplate().add(obj); + + try { + DispositionReport validateValues = vsv.validateValues(req); + } catch (Exception ex) { + log.warn(ex); + ValueNotAllowedException x = new ValueNotAllowedException(new ErrorMessage("errors.valuesetvalidation.invalidcontent", ex.getMessage())); + } + } + + public static void Validate(String url, PublisherAssertion obj) throws ValueNotAllowedException { + UDDIValueSetValidationPortType vsv=getPort(url); ValidateValues req = new ValidateValues(); - //req.getTModel().add(tm); - //TODO finish this + req.getPublisherAssertion().add(obj); try { DispositionReport validateValues = vsv.validateValues(req); } catch (Exception ex) { log.warn(ex); ValueNotAllowedException x = new ValueNotAllowedException(new ErrorMessage("errors.valuesetvalidation.invalidcontent", ex.getMessage())); - } + } } - - } Modified: juddi/branches/juddi-3.3.x/juddi-core/src/main/resources/juddi_install_data/root_BusinessEntity.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/main/resources/juddi_install_data/root_BusinessEntity.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddi-core/src/main/resources/juddi_install_data/root_BusinessEntity.xml (original) +++ juddi/branches/juddi-3.3.x/juddi-core/src/main/resources/juddi_install_data/root_BusinessEntity.xml Tue Dec 10 19:24:33 2013 @@ -372,6 +372,59 @@ <keyedReference keyName="uddi-org:types:wsdl" keyValue="wsdlDeployment" tModelKey="uddi:uddi.org:categorization:types"/> </categoryBag> </bindingTemplate> + + <bindingTemplate bindingKey="uddi:juddi.apache.org:servicebindings-valueset-ws-ssl" serviceKey="uddi:juddi.apache.org:services-valueset"> + <description>UDDI Value Set Validation API Version 3 SSL</description> + <accessPoint useType="wsdlDeployment">${juddi.server.baseurlsecure}/services/valueset-validation?wsdl</accessPoint> + <tModelInstanceDetails> + <tModelInstanceInfo tModelKey="uddi:uddi.org:v3_valuesetvalidation" /> + </tModelInstanceDetails> + <categoryBag> + <keyedReference keyName="uddi-org:types:wsdl" keyValue="wsdlDeployment" tModelKey="uddi:uddi.org:categorization:types"/> + </categoryBag> + </bindingTemplate> + + <bindingTemplate bindingKey="uddi:juddi.apache.org:servicebindings-valueset-cp" serviceKey="uddi:juddi.apache.org:services-valueset"> + <description>UDDI Value Set Validation API Version 3 using InVM Classpath Transport. Use this endpoint for Value Set Validation when + located on the same instance of jUDDI.</description> + <accessPoint useType="classpath">classpath:/org.apache.juddi.api.impl.UDDIValueSetValidationImpl</accessPoint> + <tModelInstanceDetails> + <tModelInstanceInfo tModelKey="uddi:uddi.org:v3_valuesetvalidation" /> + </tModelInstanceDetails> + </bindingTemplate> + + + </bindingTemplates> + </businessService> + + + <businessService serviceKey="uddi:juddi.apache.org:services-valueset-cache" businessKey="uddi:juddi.apache.org:businesses-asf"> + <name xml:lang="en">UDDI Value Set Caching API Service</name> + <description xml:lang="en">Web Service supporting UDDI Value Set Caching service. This service provides tModel value validation and is + configured using the jUDDI Publisher Service</description> + <bindingTemplates> + <bindingTemplate bindingKey="uddi:juddi.apache.org:servicebindings-valueset-cache-ws" serviceKey="uddi:juddi.apache.org:services-valueset-cache"> + <description>UDDI Value Set Caching API Version 3</description> + <accessPoint useType="wsdlDeployment">${juddi.server.baseurl}/services/valueset-caching?wsdl</accessPoint> + <tModelInstanceDetails> + <tModelInstanceInfo tModelKey="uddi:uddi-org:valueSetCaching_v3" /> + </tModelInstanceDetails> + <categoryBag> + <keyedReference keyName="uddi-org:types:wsdl" keyValue="wsdlDeployment" tModelKey="uddi:uddi.org:categorization:types"/> + </categoryBag> + </bindingTemplate> + + <bindingTemplate bindingKey="uddi:juddi.apache.org:servicebindings-valueset-cache-ws-ssl" serviceKey="uddi:juddi.apache.org:services-valueset-cache"> + <description>UDDI Value Set caching API Version 3 SSL</description> + <accessPoint useType="wsdlDeployment">${juddi.server.baseurlsecure}/services/valueset-caching?wsdl</accessPoint> + <tModelInstanceDetails> + <tModelInstanceInfo tModelKey="uddi:uddi-org:valueSetCaching_v3" /> + </tModelInstanceDetails> + <categoryBag> + <keyedReference keyName="uddi-org:types:wsdl" keyValue="wsdlDeployment" tModelKey="uddi:uddi.org:categorization:types"/> + </categoryBag> + </bindingTemplate> + </bindingTemplates> </businessService> Modified: juddi/branches/juddi-3.3.x/juddi-core/src/main/resources/messages.properties URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/main/resources/messages.properties?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddi-core/src/main/resources/messages.properties (original) +++ juddi/branches/juddi-3.3.x/juddi-core/src/main/resources/messages.properties Tue Dec 10 19:24:33 2013 @@ -150,6 +150,7 @@ errors.tmodel.ReferencedKeyDoesNotExist= errors.tmodel.ReferentialIntegrityNullConfig=Configuration object is null, I won't be able to process referential integrity checks on tmodel keys errors.tmodel.ReferentialIntegrityNullEM=The entity manager is null, I won't be able to process referential integrity checks on tmodel keys + errors.contacts.NoInput=At least one contact is required errors.contact.NullInput=The contact structure cannot be blank errors.contact.NoPersonName=The contact structure must contain at least one personName @@ -207,6 +208,8 @@ errors.getsubscriptionresult.ExpiredChun errors.subscriptionnotifier.client=Client did not receive notification data errors.getregisteredinfo.NoInfoSelection=The infoSelection argument is required errors.valuesetvalidation.invalidcontent=The content for tModel value is invalid according to the valid value set defined. +errors.valuesetvalidation.invalidurl=The URL for validating a checked tModel value is invalid or empty +errors.valuesetvalidation.noinput=No input was provided #-- jUDDI-specific API messages errors.AdminReqd=An account must have administrative privileges to perform this function Modified: juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/API_150_ValueSetValidationTest.java URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/API_150_ValueSetValidationTest.java?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/API_150_ValueSetValidationTest.java (original) +++ juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/API_150_ValueSetValidationTest.java Tue Dec 10 19:24:33 2013 @@ -15,11 +15,15 @@ */ package org.apache.juddi.api.impl; +import java.util.ArrayList; +import java.util.List; import org.apache.commons.configuration.ConfigurationException; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.juddi.Registry; +import org.apache.juddi.api_v3.ValidValues; import org.apache.juddi.v3.client.UDDIConstants; +import org.apache.juddi.v3.error.ValueNotAllowedException; import org.apache.juddi.v3.tck.TckPublisher; import org.apache.juddi.v3.tck.TckSecurity; import org.apache.juddi.v3.tck.TckTModel; @@ -27,12 +31,17 @@ import org.junit.AfterClass; import org.junit.Assert; import org.junit.BeforeClass; import org.junit.Test; +import org.uddi.api_v3.BindingDetail; +import org.uddi.api_v3.BusinessEntity; import org.uddi.api_v3.CategoryBag; import org.uddi.api_v3.Description; +import org.uddi.api_v3.GetBindingDetail; import org.uddi.api_v3.KeyedReference; import org.uddi.api_v3.Name; +import org.uddi.api_v3.SaveBusiness; import org.uddi.api_v3.SaveTModel; import org.uddi.api_v3.TModel; +import org.uddi.api_v3.TModelInstanceDetails; import org.uddi.v3_service.UDDIInquiryPortType; import org.uddi.v3_service.UDDIPublicationPortType; import org.uddi.v3_service.UDDISecurityPortType; @@ -82,7 +91,9 @@ public class API_150_ValueSetValidationT } } final static String VSV_KEY = "uddi:juddi.apache.org:businesses-asf"; - final static String VSV_BT_KEY = "uddi:juddi.apache.org:servicebindings-valueset-ws"; + //VIA InVM transport + final static String VSV_BT_KEY = "uddi:juddi.apache.org:servicebindings-valueset-cp"; + //VIA JAXWS Transport "uddi:juddi.apache.org:servicebindings-valueset-ws"; final static String TMODEL = "validated.checked.tmodel"; /** @@ -105,28 +116,118 @@ public class API_150_ValueSetValidationT @Test public void Scenario1() throws Exception { //create checked tmodel x - //SaveCheckedTModel(TckTModel.JOE_PUBLISHER_KEY_PREFIX + TMODEL); + SaveCheckedTModel(TckTModel.JOE_PUBLISHER_KEY_PREFIX + TMODEL); //register business/service/bt for validatevalues service //this is done by the install process using the built in vsv + //add/alter BT to include instance info for ref to tmodel checked + //turns out we don't need this either, its in the default install data //AlterRootBusiness(); + + //configure jUDDI API service to "set" the valid values + SaveVSVValues(TckTModel.JOE_PUBLISHER_KEY_PREFIX + TMODEL); + + //add a new service for joe, reference the checked tmodel with an invalid token + + SaveBusiness(authInfoJoe, true,TckTModel.JOE_PUBLISHER_KEY_PREFIX + TMODEL); + + //add a new service for joe, reference the checked tmodel with invalid token } + + @Test(expected = ValueNotAllowedException.class) + public void Scenario1Invalid() throws Exception { + //create checked tmodel x + logger.info("Saving checked tModel"); + SaveCheckedTModel(TckTModel.JOE_PUBLISHER_KEY_PREFIX + TMODEL); + //register business/service/bt for validatevalues service + //this is done by the install process using the built in vsv - private void SaveCheckedTModel(String key) throws Exception{ + + //add/alter BT to include instance info for ref to tmodel checked + //turns out we don't need this either, its in the default install data + //AlterRootBusiness(); + + //configure jUDDI API service to "set" the valid values + logger.info("Saving VS valid values"); + SaveVSVValues(TckTModel.JOE_PUBLISHER_KEY_PREFIX + TMODEL); + + //add a new service for joe, reference the checked tmodel with an invalid token + + logger.info("Saving a business using those values"); + SaveBusiness(authInfoJoe, false,TckTModel.JOE_PUBLISHER_KEY_PREFIX + TMODEL); + + //add a new service for joe, reference the checked tmodel with invalid token + } + + @Test + public void Scenarion2() { + /* + * spyhunter99> use x has a keyed reference for service xyz + <spyhunter99> register business/service/bt for validatevalues service + <spyhunter99> add/alter BT to include instance info for ref to tmodel checked + <spyhunter99> alter checked tmodel, add reference to the BT for the validator + <spyhunter99> >>> open question? do we check existing instances of tmodel x at this point? do we reject the request if validation fails? + <spyhunter99> someone tries to use the checked tmodel as a KR + <spyhunter99> on publish, the server attempts to validate the KR's value against the VV service via the binding Template + */ + } + + private void SaveCheckedTModel(String key) throws Exception { TModel tm = new TModel(); tm.setTModelKey(key); tm.setCategoryBag(new CategoryBag()); - tm.setName(new Name("My Custom validated key","en")); + tm.setName(new Name("My Custom validated key", "en")); tm.getDescription().add(new Description("valid values include 'one', 'two', 'three'", "en")); tm.getCategoryBag().getKeyedReference().add( new KeyedReference(UDDIConstants.IS_VALIDATED_BY, UDDIConstants.IS_VALIDATED_BY_KEY_NAME, VSV_BT_KEY)); SaveTModel stm = new SaveTModel(); stm.setAuthInfo(authInfoJoe); + stm.getTModel().add(tm); publication.saveTModel(stm); } - private void AlterRootBusiness() { - + /** + * The bindingTemplate for the get_allValidValues or the validate_values + * Web service SHOULD reference in its tModelInstanceDetails the + * appropriate value set API tModel (Section 11.2.7 Value Set Caching + * API tModel or Section 11.2.8 Value Set Validation API tModel) as well + * tModels for all of the value sets the service applies to. + * + * @throws Exception + */ + private void AlterRootBusiness() throws Exception { + GetBindingDetail gsd = new GetBindingDetail(); + gsd.getBindingKey().add(VSV_BT_KEY); + BindingDetail bindingDetail = inquiry.getBindingDetail(gsd); + if (bindingDetail.getBindingTemplate().get(0).getTModelInstanceDetails() == null) { + bindingDetail.getBindingTemplate().get(0).setTModelInstanceDetails(new TModelInstanceDetails()); + } + for (int i = 0; i < bindingDetail.getBindingTemplate().get(0).getTModelInstanceDetails().getTModelInstanceInfo().size(); i++) { + } + } + + private void SaveBusiness(String authInfoJoe, boolean isValid, String key) throws Exception { + SaveBusiness sb = new SaveBusiness(); + sb.setAuthInfo(authInfoJoe); + BusinessEntity be = new BusinessEntity(); + be.getName().add(new Name("VSV", null)); + be.setCategoryBag(new CategoryBag()); + if (isValid) { + be.getCategoryBag().getKeyedReference().add(new KeyedReference(key, "name", "abcdefg")); + } else { + be.getCategoryBag().getKeyedReference().add(new KeyedReference(key, "name", "qwerty")); + } + sb.getBusinessEntity().add(be); + publication.saveBusiness(sb); + } + + private void SaveVSVValues(String key) throws Exception { + List<ValidValues> items = new ArrayList<ValidValues>(); + ValidValues i = new ValidValues(); + i.setTModekKey(key); + i.getValue().add("abcdefg"); + items.add(i); + juddi.setAllValidValues(authInfoJoe, items); } } Modified: juddi/branches/juddi-3.3.x/juddi-core/src/test/resources/META-INF/persistence.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/test/resources/META-INF/persistence.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddi-core/src/test/resources/META-INF/persistence.xml (original) +++ juddi/branches/juddi-3.3.x/juddi-core/src/test/resources/META-INF/persistence.xml Tue Dec 10 19:24:33 2013 @@ -69,6 +69,8 @@ <class>org.apache.juddi.model.TransferTokenKey</class> <class>org.apache.juddi.model.UddiEntity</class> <class>org.apache.juddi.model.UddiEntityPublisher</class> + <class>org.apache.juddi.model.ValueSetValues</class> + <class>org.apache.juddi.model.ValueSetValue</class> <properties> <property name="hibernate.archive.autodetection" value="class"/> Modified: juddi/branches/juddi-3.3.x/juddi-examples/hello-world-embedded/src/main/resources/META-INF/persistence.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-examples/hello-world-embedded/src/main/resources/META-INF/persistence.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddi-examples/hello-world-embedded/src/main/resources/META-INF/persistence.xml (original) +++ juddi/branches/juddi-3.3.x/juddi-examples/hello-world-embedded/src/main/resources/META-INF/persistence.xml Tue Dec 10 19:24:33 2013 @@ -69,6 +69,8 @@ <class>org.apache.juddi.model.TransferTokenKey</class> <class>org.apache.juddi.model.UddiEntity</class> <class>org.apache.juddi.model.UddiEntityPublisher</class> + <class>org.apache.juddi.model.ValueSetValues</class> + <class>org.apache.juddi.model.ValueSetValue</class> <properties> <property name="hibernate.archive.autodetection" value="class"/> Modified: juddi/branches/juddi-3.3.x/juddi-rest-cxf/pom.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-rest-cxf/pom.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddi-rest-cxf/pom.xml (original) +++ juddi/branches/juddi-3.3.x/juddi-rest-cxf/pom.xml Tue Dec 10 19:24:33 2013 @@ -5,7 +5,7 @@ <parent> <groupId>org.apache.juddi</groupId> <artifactId>juddi-parent</artifactId> - <version>3.2.0-SNAPSHOT</version> + <version>3.3.0-SNAPSHOT</version> </parent> <groupId>org.apache.juddi</groupId> <artifactId>juddi-rest-cxf</artifactId> @@ -57,16 +57,6 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>org.apache.juddi</groupId> - <artifactId>uddi-ws</artifactId> - <version>${project.parent.version}</version> - </dependency> - <dependency> - <groupId>org.apache.juddi</groupId> - <artifactId>juddi-client</artifactId> - <version>${project.parent.version}</version> - </dependency> - <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>3.2.2.RELEASE</version> Modified: juddi/branches/juddi-3.3.x/juddi-rest-cxf/src/test/resources/META-INF/persistence.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-rest-cxf/src/test/resources/META-INF/persistence.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddi-rest-cxf/src/test/resources/META-INF/persistence.xml (original) +++ juddi/branches/juddi-3.3.x/juddi-rest-cxf/src/test/resources/META-INF/persistence.xml Tue Dec 10 19:24:33 2013 @@ -69,6 +69,8 @@ <class>org.apache.juddi.model.TransferTokenKey</class> <class>org.apache.juddi.model.UddiEntity</class> <class>org.apache.juddi.model.UddiEntityPublisher</class> + <class>org.apache.juddi.model.ValueSetValues</class> + <class>org.apache.juddi.model.ValueSetValue</class> <properties> <property name="hibernate.archive.autodetection" value="class"/> Modified: juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/CXF/WEB-INF/beans.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/CXF/WEB-INF/beans.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/CXF/WEB-INF/beans.xml (original) +++ juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/CXF/WEB-INF/beans.xml Tue Dec 10 19:24:33 2013 @@ -83,13 +83,13 @@ <entry key="schema-validation-enabled" value="true"/> </jaxws:properties> </jaxws:endpoint> -<!-- + <jaxws:endpoint id="valueset-caching" implementor="org.apache.juddi.api.impl.UDDIValueSetCachingImpl" address="/valueset-caching"> <jaxws:properties> <entry key="schema-validation-enabled" value="true"/> </jaxws:properties> </jaxws:endpoint> ---> + <jaxws:endpoint id="juddi-api" implementor="org.apache.juddi.api.impl.JUDDIApiImpl" address="/juddi-api"> <jaxws:properties> Modified: juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/JBossWS-CXF/WEB-INF/web.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/JBossWS-CXF/WEB-INF/web.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/JBossWS-CXF/WEB-INF/web.xml (original) +++ juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/JBossWS-CXF/WEB-INF/web.xml Tue Dec 10 19:24:33 2013 @@ -102,6 +102,15 @@ </init-param> </servlet> + <servlet> + <servlet-name>UDDIValueSetCachingWS</servlet-name> + <servlet-class>org.jboss.wsf.stack.cxf.CXFServletExt</servlet-class> + <init-param> + <param-name>jboss.ws.endpoint</param-name> + <param-value>org.apache.juddi.api.impl.UDDIValueSetCachingImpl</param-value> + </init-param> + </servlet> + <servlet> <servlet-name>JUDDIApiWS</servlet-name> <servlet-class>org.jboss.wsf.stack.cxf.CXFServletExt</servlet-class> @@ -135,6 +144,20 @@ <url-pattern>/services/custody-transfer/*</url-pattern> </servlet-mapping> <servlet-mapping> + <servlet-name>UDDIValueSetCachingWS</servlet-name> + <url-pattern>/services/valueset-caching/*</url-pattern> + </servlet-mapping> + <servlet-mapping> + <servlet-name>UDDIValueSetWS</servlet-name> + <url-pattern>/services/valueset-validation/*</url-pattern> + </servlet-mapping> + + <servlet-mapping> + <servlet-name>UDDIReplicationWS</servlet-name> + <url-pattern>/services/replication/*</url-pattern> + </servlet-mapping> + + <servlet-mapping> <servlet-name>JUDDIApiWS</servlet-name> <url-pattern>/services/juddi-api/*</url-pattern> </servlet-mapping> Modified: juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/JBossWS-Native/WEB-INF/web.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/JBossWS-Native/WEB-INF/web.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/JBossWS-Native/WEB-INF/web.xml (original) +++ juddi/branches/juddi-3.3.x/juddiv3-war/JAX-WS/JBossWS-Native/WEB-INF/web.xml Tue Dec 10 19:24:33 2013 @@ -86,6 +86,11 @@ <servlet-name>ValueSetService</servlet-name> <servlet-class>org.apache.juddi.api.impl.UDDIValueSetValidationImpl</servlet-class> </servlet> + + <servlet> + <servlet-name>ValueSetCaching</servlet-name> + <servlet-class>org.apache.juddi.api.impl.UDDIValueSetCachingImpl</servlet-class> + </servlet> <servlet> <servlet-name>JUDDIApiService</servlet-name> @@ -140,6 +145,11 @@ <servlet-name>ValueSetService</servlet-name> <url-pattern>/services/valueset-validation</url-pattern> </servlet-mapping> + + <servlet-mapping> + <servlet-name>ValueSetCachine</servlet-name> + <url-pattern>/services/valueset-caching</url-pattern> + </servlet-mapping> <servlet-mapping> <servlet-name>JUDDIApiService</servlet-name> Modified: juddi/branches/juddi-3.3.x/juddiv3-war/JPA/Hibernate-JBoss/WEB-INF/classes/META-INF/persistence.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddiv3-war/JPA/Hibernate-JBoss/WEB-INF/classes/META-INF/persistence.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddiv3-war/JPA/Hibernate-JBoss/WEB-INF/classes/META-INF/persistence.xml (original) +++ juddi/branches/juddi-3.3.x/juddiv3-war/JPA/Hibernate-JBoss/WEB-INF/classes/META-INF/persistence.xml Tue Dec 10 19:24:33 2013 @@ -69,6 +69,8 @@ <class>org.apache.juddi.model.TransferTokenKey</class> <class>org.apache.juddi.model.UddiEntity</class> <class>org.apache.juddi.model.UddiEntityPublisher</class> + <class>org.apache.juddi.model.ValueSetValues</class> + <class>org.apache.juddi.model.ValueSetValue</class> <properties> <property name="hibernate.archive.autodetection" value="class"/> Modified: juddi/branches/juddi-3.3.x/juddiv3-war/JPA/Hibernate/WEB-INF/classes/META-INF/persistence.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddiv3-war/JPA/Hibernate/WEB-INF/classes/META-INF/persistence.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddiv3-war/JPA/Hibernate/WEB-INF/classes/META-INF/persistence.xml (original) +++ juddi/branches/juddi-3.3.x/juddiv3-war/JPA/Hibernate/WEB-INF/classes/META-INF/persistence.xml Tue Dec 10 19:24:33 2013 @@ -69,6 +69,8 @@ <class>org.apache.juddi.model.TransferTokenKey</class> <class>org.apache.juddi.model.UddiEntity</class> <class>org.apache.juddi.model.UddiEntityPublisher</class> + <class>org.apache.juddi.model.ValueSetValues</class> + <class>org.apache.juddi.model.ValueSetValue</class> <properties> <property name="hibernate.archive.autodetection" value="class"/> Modified: juddi/branches/juddi-3.3.x/juddiv3-war/JPA/OpenJPA-JBossAS7Up/WEB-INF/classes/META-INF/persistence.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddiv3-war/JPA/OpenJPA-JBossAS7Up/WEB-INF/classes/META-INF/persistence.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddiv3-war/JPA/OpenJPA-JBossAS7Up/WEB-INF/classes/META-INF/persistence.xml (original) +++ juddi/branches/juddi-3.3.x/juddiv3-war/JPA/OpenJPA-JBossAS7Up/WEB-INF/classes/META-INF/persistence.xml Tue Dec 10 19:24:33 2013 @@ -69,6 +69,9 @@ <class>org.apache.juddi.model.TransferTokenKey</class> <class>org.apache.juddi.model.UddiEntity</class> <class>org.apache.juddi.model.UddiEntityPublisher</class> + <class>org.apache.juddi.model.ValueSetValues</class> + <class>org.apache.juddi.model.ValueSetValue</class> + <properties> <property name="openjpa.jdbc.SynchronizeMappings" value="buildSchema(SchemaAction='add')"/> <property name="openjpa.Log" value="DefaultLevel=WARN, Tool=INFO"/> Modified: juddi/branches/juddi-3.3.x/juddiv3-war/JPA/OpenJPA/WEB-INF/classes/META-INF/persistence.xml URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddiv3-war/JPA/OpenJPA/WEB-INF/classes/META-INF/persistence.xml?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/juddiv3-war/JPA/OpenJPA/WEB-INF/classes/META-INF/persistence.xml (original) +++ juddi/branches/juddi-3.3.x/juddiv3-war/JPA/OpenJPA/WEB-INF/classes/META-INF/persistence.xml Tue Dec 10 19:24:33 2013 @@ -69,6 +69,9 @@ <class>org.apache.juddi.model.TransferTokenKey</class> <class>org.apache.juddi.model.UddiEntity</class> <class>org.apache.juddi.model.UddiEntityPublisher</class> + <class>org.apache.juddi.model.ValueSetValues</class> + <class>org.apache.juddi.model.ValueSetValue</class> + <properties> <property name="openjpa.jdbc.SynchronizeMappings" value="buildSchema(SchemaAction='add')"/> <property name="openjpa.Log" value="DefaultLevel=WARN, Tool=INFO"/> Modified: juddi/branches/juddi-3.3.x/uddi-ws/src/main/java/org/uddi/vscache_v3/ValidValue.java URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/uddi-ws/src/main/java/org/uddi/vscache_v3/ValidValue.java?rev=1549946&r1=1549945&r2=1549946&view=diff ============================================================================== --- juddi/branches/juddi-3.3.x/uddi-ws/src/main/java/org/uddi/vscache_v3/ValidValue.java (original) +++ juddi/branches/juddi-3.3.x/uddi-ws/src/main/java/org/uddi/vscache_v3/ValidValue.java Tue Dec 10 19:24:33 2013 @@ -56,6 +56,13 @@ public class ValidValue implements Seria @XmlElement(required = true) protected String keyValue; + public ValidValue() { + } + + public ValidValue(String val) { + + this.keyValue = val; + } /** * Gets the value of the keyValue property. * --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
