You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsrf-dev@ws.apache.org by sc...@apache.org on 2005/03/07 15:47:31 UTC

svn commit: r156425 - in incubator/apollo/trunk/src/site/content/example: ./ src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/

Author: scamp
Date: Mon Mar  7 06:47:27 2005
New Revision: 156425

URL: http://svn.apache.org/viewcvs?view=rev&rev=156425
Log: (empty)


Modified:
    incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortHome.java
    incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortService.java
    incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterFactoryService.java
    incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterPortHome.java
    incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterPort_jndi-config.xml
    incubator/apollo/trunk/src/site/content/example/test.xml

Modified: incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortHome.java
URL: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortHome.java?view=diff&r1=156424&r2=156425
==============================================================================
--- incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortHome.java (original)
+++ incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortHome.java Mon Mar  7 06:47:27 2005
@@ -125,20 +125,21 @@
                                      PrinterPortResource  printerResource )
    {
       ++m_jobId;
-       SimpleTypeResourceKey key = createResourceKey();
+       int jobId = (int)m_jobId;
+       SimpleTypeResourceKey key = createResourceKey(jobId);
        EndpointReferenceType jobEpr = getEprForResource( key,
                                                         resourceContext.getBaseURL(  ) );
-      JobPortResource       job    = new JobPortResource( jobEpr, m_jobId, jobName, origUserName, printerResource );
+      JobPortResource       job    = new JobPortResource( jobEpr, jobId, jobName, origUserName, printerResource );
       job.init(  );
       add( key, job );      
       return job;
    }
 
-    private SimpleTypeResourceKey createResourceKey()
+    private SimpleTypeResourceKey createResourceKey(int jobId)
     {
         SimpleTypeResourceKey key    =
            new SimpleTypeResourceKey( QName.valueOf( "{http://docs.oasis-open.org/wsrf/2005/01/wsrf-Interop-2.0-draft-03.wsdl}ResourceID" ),
-                                      "Job" + Integer.toString( (int) m_jobId ) );
+                                      "Job" + Integer.toString( jobId ) );
         return key;
     }
 
@@ -156,10 +157,11 @@
                                      PrinterPortResource printerResource )
    {
       ++m_jobId;
-       SimpleTypeResourceKey key = createResourceKey();
+       int jobId = (int)m_jobId;
+       SimpleTypeResourceKey key = createResourceKey(jobId);
        EndpointReferenceType jobEpr = getEprForResource( key,
                                                         resourceContext.getBaseURL(  ) );
-      JobPortResource       job    = new JobPortResource( jobEpr, m_jobId, jobName, printerResource );
+      JobPortResource       job    = new JobPortResource( jobEpr, jobId, jobName, printerResource );
       job.init(  );
       add( key, job );
       return job;

Modified: incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortService.java
URL: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortService.java?view=diff&r1=156424&r2=156425
==============================================================================
--- incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortService.java (original)
+++ incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortService.java Mon Mar  7 06:47:27 2005
@@ -133,10 +133,7 @@
 
       try
       {
-         InitialContext                  ctx                     = new InitialContext(  );
-         PrinterPortHome                 home                    =
-            (PrinterPortHome) ctx.lookup( PrinterPortHome.HOME_LOCATION );
-         PrinterPortResource             printResource           = (PrinterPortResource) home.find( null );
+         PrinterPortResource             printResource           = ((JobPortResource)getResourceContext().getResource()).getPrinterResource();
          XmlBeansResourceProperty        xmlPropDocFormat        =
             (XmlBeansResourceProperty) printResource.getResourcePropertySet(  ).get( PrinterPortPropertyQNames.DOCUMENT_FORMAT_SUPPORTED );
          MimeMediaTypes documentFormatSupported           =
@@ -154,7 +151,7 @@
             }
          }
       }
-      catch ( NamingException e )
+      catch ( Exception e )
       {
          throw new ClientErrorNotPossibleFaultException(new NamespaceVersionHolderImpl(), "Error occurred when checking if doc type is supported: " + e);
       }

Modified: incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterFactoryService.java
URL: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterFactoryService.java?view=diff&r1=156424&r2=156425
==============================================================================
--- incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterFactoryService.java (original)
+++ incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterFactoryService.java Mon Mar  7 06:47:27 2005
@@ -76,7 +76,8 @@
          responseDocument.getCreatePrinterResponse(  );
       try
       {
-         Context             initialContext  = new InitialContext(  );
+
+          Context             initialContext  = new InitialContext(  );
          PrinterPortHome     printerPortHome =
             (PrinterPortHome) initialContext.lookup( PrinterPortHome.HOME_LOCATION );
          PrinterPortResource instance        =

Modified: incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterPortHome.java
URL: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterPortHome.java?view=diff&r1=156424&r2=156425
==============================================================================
--- incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterPortHome.java (original)
+++ incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterPortHome.java Mon Mar  7 06:47:27 2005
@@ -16,10 +16,18 @@
 package org.oasisOpen.docs.wsrf.x2005.x01.wsrfInterop20Draft03Wsdl;
 
 import org.apache.ws.resource.*;
+import org.apache.ws.resource.properties.faults.ResourceUnknownFaultException;
+import org.apache.ws.resource.properties.v1_2_draft05.porttype.impl.NamespaceVersionHolderImpl;
 import org.apache.ws.resource.impl.AbstractResourceHome;
+import org.apache.ws.resource.impl.SimpleTypeResourceKey;
+import org.apache.ws.util.XmlBeanUtils;
+import org.apache.xmlbeans.XmlObject;
 import org.xmlsoap.schemas.ws.x2004.x08.addressing.AttributedURI;
 import org.xmlsoap.schemas.ws.x2004.x08.addressing.EndpointReferenceDocument;
 import org.xmlsoap.schemas.ws.x2004.x08.addressing.EndpointReferenceType;
+import org.xmlsoap.schemas.ws.x2004.x08.addressing.ReferencePropertiesType;
+
+import javax.xml.namespace.QName;
 import java.io.Serializable;
 
 /**
@@ -34,9 +42,10 @@
    /** DOCUMENT_ME */
    public static final String  HOME_LOCATION =
       JndiConstants.CONTEXT_NAME_SERVICES + "/" + SERVICE_NAME + "/" + JndiConstants.ATOMIC_NAME_HOME;
-   private PrinterPortResource m_printer;
+  // private PrinterPortResource m_printer;
+    private int m_printerId = 0;
 
-   /**
+    /**
     * @param resourceContext DOCUMENT_ME
     * @return DOCUMENT_ME
     * @throws ResourceException        DOCUMENT_ME
@@ -44,32 +53,40 @@
     * @throws ResourceUnknownException DOCUMENT_ME
     */
    public Resource getInstance( ResourceContext resourceContext )
-   throws ResourceException, 
-          ResourceContextException, 
+   throws ResourceException,
+          ResourceContextException,
           ResourceUnknownException
    {
-      //singleton
-      if ( m_printer == null )
+      ResourceKey key      = resourceContext.getResourceKey(  );
+      Resource    resource = null;
+      try
+      {
+         resource = find( key );
+      }
+      catch ( ResourceException re )
       {
-         throw new ResourceUnknownException( null, SERVICE_NAME );
+         throw new ResourceUnknownFaultException( new NamespaceVersionHolderImpl(  ),
+                                                  new ResourceUnknownException( null, "An error occurred" ) );
       }
-      return m_printer;
+
+      return resource;
    }
 
-   /**
-    * DOCUMENT_ME
-    *
-    * @param serviceUrl DOCUMENT_ME
-    *
-    * @return DOCUMENT_ME
-    */
-   public EndpointReferenceType getPrinterEpr( String serviceUrl )
+
+    public EndpointReferenceType getEprForResource( ResourceKey key,
+                                                   String      serviceUrl )
    {
       EndpointReferenceDocument eprDoc  = EndpointReferenceDocument.Factory.newInstance(  );
       EndpointReferenceType     epr     = eprDoc.addNewEndpointReference(  );
       AttributedURI             address = epr.addNewAddress(  );
+      address.setStringValue( serviceUrl + "/" +SERVICE_NAME );
+      ReferencePropertiesType refProps = epr.addNewReferenceProperties(  );
+
+      XmlObject               xmlObject = XmlBeanUtils.addChildElement( refProps,
+                                                                        key.getName(  ) );
+      XmlBeanUtils.setValue( xmlObject,
+                             key.getValue(  ).toString(  ) );
 
-      address.setStringValue( serviceUrl + "/" + SERVICE_NAME );      
       return epr;
    }
 
@@ -89,15 +106,24 @@
           ResourceContextException, 
           ResourceUnknownException
    {
-      //singleton
-      if ( m_printer == null )
-      {
-         m_printer = new PrinterPortResource( "Printer1",
-                                              getPrinterEpr( resourceContext.getBaseURL(  ) ) );
-         m_printer.init(  );
-         add(null, m_printer);
-      }
-
-      return m_printer;
+       ++m_printerId;
+       int printerId = m_printerId;
+       SimpleTypeResourceKey key = createResourceKey(printerId);
+       EndpointReferenceType printerEpr = getEprForResource( key,
+                                                        resourceContext.getBaseURL(  ) );
+         PrinterPortResource printer = new PrinterPortResource( "Printer" + printerId,
+                                              getEprForResource( key, resourceContext.getBaseURL(  ) ) );
+         printer.init(  );
+         add(key, printer);
+      
+      return printer;
    }
+
+     private SimpleTypeResourceKey createResourceKey(int printerId)
+    {
+        SimpleTypeResourceKey key    =
+           new SimpleTypeResourceKey( QName.valueOf( "{http://docs.oasis-open.org/wsrf/2005/01/wsrf-Interop-2.0-draft-03.wsdl}ResourceID" ),
+                                      "Printer" + Integer.toString(  printerId ) );
+        return key;
+    }
 }

Modified: incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterPort_jndi-config.xml
URL: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterPort_jndi-config.xml?view=diff&r1=156424&r2=156425
==============================================================================
--- incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterPort_jndi-config.xml (original)
+++ incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/PrinterPort_jndi-config.xml Mon Mar  7 06:47:27 2005
@@ -17,7 +17,10 @@
                <name>wsdlTargetNamespace</name>
                <value>http://docs.oasis-open.org/wsrf/2005/01/wsrf-Interop-2.0-draft-03.wsdl</value>
             </parameter>
-                
+                          <parameter>
+               <name>resourceKeyName</name>
+               <value>{http://docs.oasis-open.org/wsrf/2005/01/wsrf-Interop-2.0-draft-03.wsdl}ResourceID</value>
+            </parameter> 
                      </resourceParams>
       </resource>
    </service>

Modified: incubator/apollo/trunk/src/site/content/example/test.xml
URL: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/site/content/example/test.xml?view=diff&r1=156424&r2=156425
==============================================================================
--- incubator/apollo/trunk/src/site/content/example/test.xml (original)
+++ incubator/apollo/trunk/src/site/content/example/test.xml Mon Mar  7 06:47:27 2005
@@ -19,6 +19,7 @@
         <echo>Using webapp dir: ${wsrf.webapp.dir}</echo>                
         
         <path id="apollo.classpath.id">
+          <pathelement location="${test.classes.dir}"/>
           <pathelement location="${basedir}/classes" />
           <pathelement location="${wsrf.webapp.dir}/WEB-INF/classes" />
           <fileset dir="${wsrf.webapp.dir}/WEB-INF/lib" includes="*.jar" />
@@ -36,8 +37,7 @@
         <sysproperty key="basedir" value="${basedir}"/>
         <sysproperty key="printerFactoryURL" value="${printerFactoryURL}"/>
         <sysproperty key="runAxis" value="${runAxis}"/>
-        <classpath>	
-            <pathelement location="${test.classes.dir}"/>
+        <classpath>	            
 	    <pathelement path="${apollo.classpath}"/>	    
   	</classpath>
   	<formatter type="plain"/>



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