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