List of usage examples for javax.xml.registry BusinessLifeCycleManager createPostalAddress
public PostalAddress createPostalAddress(String streetNumber, String street, String city, String stateOrProvince, String country, String postalCode, String type) throws JAXRException;
From source file:JAXRPublishPostal.java
/** * Creates an organization, its classification, and its * services, and saves it to the registry. The primary * contact has a postal address.// w w w . j ava 2 s . c om * * @param username the username for the registry * @param password the password for the registry */ public void executePublish(String username, String password) { RegistryService rs = null; BusinessLifeCycleManager blcm = null; BusinessQueryManager bqm = null; try { rs = connection.getRegistryService(); blcm = rs.getBusinessLifeCycleManager(); bqm = rs.getBusinessQueryManager(); System.out.println("Got registry service, query " + "manager, and life cycle manager"); // Get authorization from the registry PasswordAuthentication passwdAuth = new PasswordAuthentication(username, password.toCharArray()); HashSet<PasswordAuthentication> creds = new HashSet<PasswordAuthentication>(); creds.add(passwdAuth); connection.setCredentials(creds); System.out.println("Established security credentials"); ResourceBundle bundle = ResourceBundle.getBundle("JAXRExamples"); // Create organization name and description InternationalString s = blcm.createInternationalString(bundle.getString("postal.org.name")); Organization org = blcm.createOrganization(s); s = blcm.createInternationalString(bundle.getString("org.description")); org.setDescription(s); // Create primary contact, set name User primaryContact = blcm.createUser(); PersonName pName = blcm.createPersonName(bundle.getString("postal.person.name")); primaryContact.setPersonName(pName); // Set primary contact phone number TelephoneNumber tNum = blcm.createTelephoneNumber(); tNum.setNumber(bundle.getString("phone.number")); Collection<TelephoneNumber> phoneNums = new ArrayList<TelephoneNumber>(); phoneNums.add(tNum); primaryContact.setTelephoneNumbers(phoneNums); // Set primary contact email address EmailAddress emailAddress = blcm.createEmailAddress(bundle.getString("postal.email.address")); Collection<EmailAddress> emailAddresses = new ArrayList<EmailAddress>(); emailAddresses.add(emailAddress); primaryContact.setEmailAddresses(emailAddresses); // create postal address for primary contact String streetNumber = bundle.getString("postal.streetNumber"); String street = bundle.getString("postal.street"); String city = bundle.getString("postal.city"); String state = bundle.getString("postal.state"); String country = bundle.getString("postal.country"); String postalCode = bundle.getString("postal.postalCode"); String type = bundle.getString("postal.type"); PostalAddress postAddr = blcm.createPostalAddress(streetNumber, street, city, state, country, postalCode, type); Collection<PostalAddress> postalAddresses = new ArrayList<PostalAddress>(); postalAddresses.add(postAddr); primaryContact.setPostalAddresses(postalAddresses); // Set primary contact for organization org.setPrimaryContact(primaryContact); // Set classification scheme to NAICS, using // well-known UUID of ntis-gov:naics:1997 String uuid_naics = "uuid:C0B9FE13-179F-413D-8A5B-5004DB8E5BB2"; ClassificationScheme cScheme = (ClassificationScheme) bqm.getRegistryObject(uuid_naics, LifeCycleManager.CLASSIFICATION_SCHEME); // Create and add classification if (cScheme != null) { InternationalString sn = blcm.createInternationalString(bundle.getString("classification.name")); Classification classification = blcm.createClassification(cScheme, sn, bundle.getString("classification.value")); Collection<Classification> classifications = new ArrayList<Classification>(); classifications.add(classification); org.addClassifications(classifications); } else { System.out.println("Classification scheme not found, " + "not classifying organization"); } // Create services and service Collection<Service> services = new ArrayList<Service>(); s = blcm.createInternationalString(bundle.getString("service.name")); Service service = blcm.createService(s); s = blcm.createInternationalString(bundle.getString("service.description")); service.setDescription(s); // Create service bindings; don't validate this fake URL Collection<ServiceBinding> serviceBindings = new ArrayList<ServiceBinding>(); ServiceBinding binding = blcm.createServiceBinding(); s = blcm.createInternationalString(bundle.getString("svcbinding.description")); binding.setDescription(s); // Allow us to publish a fictitious URI without an error binding.setValidateURI(false); binding.setAccessURI(bundle.getString("svcbinding.accessURI")); serviceBindings.add(binding); // Add service bindings to service service.addServiceBindings(serviceBindings); // Add service to services, then add services to organization services.add(service); org.addServices(services); // Add organization and submit to registry // Retrieve key if successful Collection<Organization> orgs = new ArrayList<Organization>(); orgs.add(org); BulkResponse response = blcm.saveOrganizations(orgs); Collection exceptions = response.getExceptions(); if (exceptions == null) { System.out.println("Organization saved"); Collection keys = response.getCollection(); for (Object k : keys) { Key orgKey = (Key) k; String id = orgKey.getId(); System.out.println("Organization key is " + id); } } else { for (Object e : exceptions) { Exception exception = (Exception) e; System.err.println("Exception on save: " + exception.toString()); } } } catch (Exception e) { e.printStackTrace(); } finally { // At end, close connection to registry if (connection != null) { try { connection.close(); } catch (JAXRException je) { } } } }