You are viewing a plain text version of this content. The canonical link for it is here.
Posted to muse-dev@ws.apache.org by jr...@apache.org on 2005/08/02 03:56:15 UTC

svn commit: r226924 - in /webservices/muse/trunk/src/site/content/xdocs/tutorial: index.xml mod_home.xml mod_resource.xml mod_service.xml test.xml webapp.xml

Author: jruzzi
Date: Mon Aug  1 18:56:11 2005
New Revision: 226924

URL: http://svn.apache.org/viewcvs?rev=226924&view=rev
Log:
updated tutorial

Added:
    webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_service.xml
Modified:
    webservices/muse/trunk/src/site/content/xdocs/tutorial/index.xml
    webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_home.xml
    webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_resource.xml
    webservices/muse/trunk/src/site/content/xdocs/tutorial/test.xml
    webservices/muse/trunk/src/site/content/xdocs/tutorial/webapp.xml

Modified: webservices/muse/trunk/src/site/content/xdocs/tutorial/index.xml
URL: http://svn.apache.org/viewcvs/webservices/muse/trunk/src/site/content/xdocs/tutorial/index.xml?rev=226924&r1=226923&r2=226924&view=diff
==============================================================================
--- webservices/muse/trunk/src/site/content/xdocs/tutorial/index.xml (original)
+++ webservices/muse/trunk/src/site/content/xdocs/tutorial/index.xml Mon Aug  1 18:56:11 2005
@@ -12,7 +12,7 @@
 			services represent a UNIX file system resource and a host resource. If you want to see a completed version of this example, see the 
 			<a href="site:quick">Quick Demonstration</a>.
 			</p>
-			<note>To complete the tutorial, you must first <a href="site:installation">install</a> the distribution.</note> 
+			<note>To complete the tutorial, you must first <a href="site:installation">install</a> the distribution.</note>
 			<p>The tutorial consists of the following steps:</p>
 			<ol>
 				<li>
@@ -29,6 +29,9 @@
 				</li>
 				<li>
 					<a href="mod_resource.html">Modify the Resource Classes</a>
+				</li>
+				<li>
+					<a href="mod_service.html">Modify the Service Class</a>
 				</li>
 				<li>
 					<a href="webapp.html">Compile and Deploy the Services</a>

Modified: webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_home.xml
URL: http://svn.apache.org/viewcvs/webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_home.xml?rev=226924&r1=226923&r2=226924&view=diff
==============================================================================
--- webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_home.xml (original)
+++ webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_home.xml Mon Aug  1 18:56:11 2005
@@ -14,7 +14,7 @@
 		</section>
 		<section>
 			<title>Modify the FilesytemHome Class</title>
-			<p>Open <code>WORK_DIR/generated/Filesystem/src/java/org/apache/ws/resource/example/filesystem/FilesystemHome.java</code> and
+			<p>Open <code>WORK_DIR/generated/filesystem/src/java/org/apache/ws/resource/example/filesystem/FilesystemHome.java</code> and
 			replace the <code>public void init()</code> method with the following method. You will also need to copy the instance variables below.</p>
 			<source><![CDATA[
     private static final String LVOL1_ID = "/dev/vg00/lvol1";
@@ -34,7 +34,7 @@
 		</section>
 		<section>
 			<title>Modify the Host Home Class</title>
-			<p>Open <code>WORK_DIR/generated/Host/src/java/org/apache/ws/resource/example/host/HostHome.java</code> and
+			<p>Open <code>WORK_DIR/generated/host/src/java/org/apache/ws/resource/example/host/HostHome.java</code> and
 			replace the <code>init()</code> method with the following method:
 			</p>
 			<source><![CDATA[

Modified: webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_resource.xml
URL: http://svn.apache.org/viewcvs/webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_resource.xml?rev=226924&r1=226923&r2=226924&view=diff
==============================================================================
--- webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_resource.xml (original)
+++ webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_resource.xml Mon Aug  1 18:56:11 2005
@@ -25,7 +25,7 @@
 		</section>
 		<section>
 			<title>Modify the FileSystem Resource Class</title>
-			<p>Open <code>WORK_DIR/generated/Filesystem/src/java/org/apache/ws/resource/example/filesystem/FilesystemResource.java</code> and
+			<p>Open <code>WORK_DIR/generated/filesystem/src/java/org/apache/ws/resource/example/filesystem/FilesystemResource.java</code> and
 			replace the <code>public void init()</code> method with the following methods. You will also need to copy the instance variables and custom operation 
 			methods below.</p>
 			<source><![CDATA[
@@ -135,8 +135,7 @@
              * MUWS-defined properties.
              */
             // init the {http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part1.xsd}ResourceId resource property
-            resourceProperty = resourcePropertySet.get( FilesystemPropertyQNames.RESOURCEID );
-            resourceProperty.setCallback( new org.apache.ws.muws.ResourceIdResourcePropertyCallback( this ) );
+            org.apache.ws.muws.MuwsUtils.initResourceIdProperty(this);
             // NOTE: it's not necessary to add a property change listener, since the ResourceId prop is immutable
 
             // init the {http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part1.xsd}ManageabilityCapability resource property
@@ -162,6 +161,9 @@
 
             // init the {http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part2.xsd}OperationalStatus resource property
             resourceProperty = resourcePropertySet.get( FilesystemPropertyQNames.OPERATIONALSTATUS );
+            org.oasisOpen.docs.wsdm.x2004.x12.muws.wsdmMuwsPart2.OperationalStatusDocument statusDoc = org.oasisOpen.docs.wsdm.x2004.x12.muws.wsdmMuwsPart2.OperationalStatusDocument.Factory.newInstance();
+            statusDoc.setOperationalStatus( org.oasisOpen.docs.wsdm.x2004.x12.muws.wsdmMuwsPart2.OperationalStatusDocument.OperationalStatus.AVAILABLE );
+            resourceProperty.add(statusDoc);
             resourceProperty.setCallback( new example.filesystem.callback.OperationalStatusCallback( m_filesystem ) );
             resourceProperty.addChangeListener( operationalStatusCapabilityTopic ); // add for property-value-changed management events
 
@@ -176,6 +178,7 @@
             org.oasisOpen.docs.wsdm.x2004.x12.muws.wsdmMuwsPart2.RelationshipTypeType relationshipTypeType = relationshipType.addNewType();
             org.apache.ws.util.XmlBeanUtils.addChildElement( relationshipTypeType, new javax.xml.namespace.QName( "http://myns.com/", "ContainedBy", "myns" ) );
 
+
             org.oasisOpen.docs.wsdm.x2004.x12.muws.wsdmMuwsPart2.RelationshipParticipantType relationshipParticipantType = relationshipType.addNewParticipant();
             org.apache.ws.resource.properties.ResourceProperty resourceIdProp = resourcePropertySet.get( FilesystemPropertyQNames.RESOURCEID );
             org.apache.xmlbeans.XmlAnyURI resourceId = (org.apache.xmlbeans.XmlAnyURI) resourceIdProp.get( 0 );
@@ -245,7 +248,6 @@
         }
 
     }
-
     public void mount() throws Exception
     {
         m_filesystem.mount();
@@ -267,33 +269,35 @@
 			replace the <code>public void init()</code> method with the following method:
 			</p>
 			<source><![CDATA[
-   public void init()
-   {
-       super.init();
-       
-       /**
-   	 * The ResourcePropertySet which contains all the defined ResourceProperties
-   	 */
-   	  org.apache.ws.resource.properties.ResourcePropertySet resourcePropertySet = getResourcePropertySet();
-   	  org.apache.ws.resource.properties.ResourceProperty resourceProperty = null;
-   	  
-   	  try
-   	  {
-   	      // init the {http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part1.xsd}ResourceId resource property
-   	      resourceProperty = resourcePropertySet.get( HostPropertyQNames.RESOURCEID );
-   	      resourceProperty.setCallback( new org.apache.ws.muws.ResourceIdResourcePropertyCallback( this ) );
-   	      // NOTE: it's not necessary to add a property change listener, since the ResourceId prop is immutable
-   	  }
-   	  catch (Exception e)
-   	  {
-   	       throw new javax.xml.rpc.JAXRPCException("There was a problem in initializing your resource properties.  Please check your init() method. Cause: " + e.getLocalizedMessage());
-	  }
+  public void init()
+       {
+           super.init();
+
+           /**
+   		 * The ResourcePropertySet which contains all the defined ResourceProperties
+   		 */
+   		org.apache.ws.resource.properties.ResourcePropertySet resourcePropertySet = getResourcePropertySet();
+   		org.apache.ws.resource.properties.ResourceProperty resourceProperty = null;
+
+
+   	try{
+             // init the {http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part1.xsd}ResourceId resource property
+             MuwsUtils.initResourceIdProperty(this);
+             // NOTE: it's not necessary to add a property change listener, since the ResourceId prop is immutable
+
+   		}
+   	catch (Exception e)
+   	{
+   	   throw new javax.xml.rpc.JAXRPCException("There was a problem in initializing your resource properties.  Please check your init() method. Cause: " + e.getLocalizedMessage());
+   	}
+
+
    }]]></source>
 			<p>
 				<img src="images/back.gif" alt="go to the previous step"/>
 				<a href="site:modhome">Back</a>
 				<img src="images/next.gif" alt="go to the next step"/>
-				<a href="site:webapp">Next</a>
+				<a href="site:modservice">Next</a>
 			</p>
 		</section>
 	</body>

Added: webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_service.xml
URL: http://svn.apache.org/viewcvs/webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_service.xml?rev=226924&view=auto
==============================================================================
--- webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_service.xml (added)
+++ webservices/muse/trunk/src/site/content/xdocs/tutorial/mod_service.xml Mon Aug  1 18:56:11 2005
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN"
+          "http://forrest.apache.org/dtd/document-v20.dtd">
+<document>
+	<header>
+		<title>Modify the Service Class</title>
+	</header>
+	<body>
+		<section>
+			<title>Introduction</title>
+			<p>In this step of the tutorial, the generated Service class (<code>FilesystemService</code>) is modified to include an <code>updateOperationalStatus</code> method. 
+			This method updates the <code>OperationalStatus</code> property whenever a <code>Mount</code> or <code>Unmount</code> operation is performed and publishes 
+			a <code>ResourcePropertyValueChangeEvent</code> to the <code>OperationalStatus</code> notification topic. A client that subscribes to the 
+			<code>OperationalStatus</code> notification topic receives a notification when this property changes.
+			</p>
+		</section>
+		<section>
+			<title>Modify the Service Class</title>
+			<p>Open <code>WORK_DIR/generated/filesystem/src/java/org/apache/ws/resource/example/filesystem/FilesystemService.java</code> and
+			add the following method:</p>
+			<source><![CDATA[
+   public void updateOperationalStatus(OperationalStatusDocument.OperationalStatus.Enum newStatus)
+    {
+        NotificationProducerResource resource = (NotificationProducerResource)getResource();
+        org.apache.ws.resource.properties.ResourceProperty statusProp = resource.getResourcePropertySet().get(FilesystemPropertyQNames.OPERATIONALSTATUS);
+        org.oasisOpen.docs.wsdm.x2004.x12.muws.wsdmMuwsPart2.OperationalStatusDocument.OperationalStatus currentStatus = (org.oasisOpen.docs.wsdm.x2004.x12.muws.wsdmMuwsPart2.OperationalStatusDocument.OperationalStatus) statusProp.get(0);
+        if (!currentStatus.enumValue().equals(newStatus))
+        {
+            XmlObject oldStatus = org.apache.ws.util.XmlBeanUtils.copyXmlBean(currentStatus);
+            currentStatus.set(newStatus);
+            org.apache.ws.notification.topics.TopicSpace muwsTopicSpace = resource.getTopicSpaceSet().getTopicSpace(org.apache.ws.muws.v1_0.MuwsConstants.NSURI_MUWS_PART2_TOPICS);
+            org.apache.ws.muws.v1_0.topics.impl.XmlBeansManagementEventTopicImpl statusTopic = (org.apache.ws.muws.v1_0.topics.impl.XmlBeansManagementEventTopicImpl) muwsTopicSpace.getTopic(org.apache.ws.muws.v1_0.capability.OperationalStatusCapability.TOPIC_NAME);
+            org.apache.ws.resource.properties.ResourcePropertyValueChangeEvent statusChangeEvent = new org.apache.ws.resource.properties.v2004_06.impl.XmlBeansResourcePropertyValueChangeEvent(new Object[]{oldStatus}, new Object[]{currentStatus});
+            statusTopic.propertyChanged(statusChangeEvent);  // publish the event
+        }
+        return;
+    }]]></source>
+			<p>
+				<img src="images/back.gif" alt="go to the previous step"/>
+				<a href="site:modresource">Back</a>
+				<img src="images/next.gif" alt="go to the next step"/>
+				<a href="site:webapp">Next</a>
+			</p>
+		</section>
+	</body>
+</document>

Modified: webservices/muse/trunk/src/site/content/xdocs/tutorial/test.xml
URL: http://svn.apache.org/viewcvs/webservices/muse/trunk/src/site/content/xdocs/tutorial/test.xml?rev=226924&r1=226923&r2=226924&view=diff
==============================================================================
--- webservices/muse/trunk/src/site/content/xdocs/tutorial/test.xml (original)
+++ webservices/muse/trunk/src/site/content/xdocs/tutorial/test.xml Mon Aug  1 18:56:11 2005
@@ -22,12 +22,12 @@
 				<li>From a command prompt, change directories to <code>WORK_DIR</code>.</li>
 				<li>Run:
       				<source><![CDATA[
- ant -f soapclient.xml -Durl=http://localhost:8080/muse/services/filesystem -Dxml=INSTALL_DIR/examples/filesystem/requests/Subscribe_updateMountPointProp.soap]]></source>
+ ant -f soapclient.xml -Durl=http://localhost:8080/muse/services/filesystem -Dxml=INSTALL_DIR/examples/filesystem/requests/GetMultipleResourceProperties.soap]]></source>
       				Replace <code>INSTALL_DIR</code> in the <code>xml</code> property.</li>
 			</ol>
 			<p>You may also try other request messages in the 
       				<code>requests</code> directory.</p>
-      			<p>
+			<p>
 				<img src="images/back.gif" alt="go to the previous step"/>
 				<a href="site:webapp">Back</a>
 			</p>

Modified: webservices/muse/trunk/src/site/content/xdocs/tutorial/webapp.xml
URL: http://svn.apache.org/viewcvs/webservices/muse/trunk/src/site/content/xdocs/tutorial/webapp.xml?rev=226924&r1=226923&r2=226924&view=diff
==============================================================================
--- webservices/muse/trunk/src/site/content/xdocs/tutorial/webapp.xml (original)
+++ webservices/muse/trunk/src/site/content/xdocs/tutorial/webapp.xml Mon Aug  1 18:56:11 2005
@@ -21,17 +21,17 @@
 				<p>To compile and deploy the FileSystem service:</p>
 				<ol>
 					<li>Copy <code>INSTALL_DIR/examples/filesystem/src/java/example</code> to 
-					<code>WORK_DIR/generated/Filesystem/src/java</code>.</li>
-					<li>Using a text editor, open <code>WORK_DIR/generated/Filesystem/build.properties</code>.</li>
+					<code>WORK_DIR/generated/filesystem/src/java</code>.</li>
+					<li>Using a text editor, open <code>WORK_DIR/generated/filesystem/build.properties</code>.</li>
 					<li>Uncomment the <code>muse.webapp.dir</code> property and set it to the location where the MUSE Web application is installed. If you are using 
 					Tomcat and have <code>CATALINA_HOME</code> set, you do not need to modify this property.</li>
 					<li>Uncomment and modify the proxy settings if you require a proxy to connect to external Web sites.</li>
 					<li>Save and close build.properties.</li>
-					<li>From a command prompt, change directories to <code>WORK_DIR/generated/Filesystem</code>.</li>
+					<li>From a command prompt, change directories to <code>WORK_DIR/generated/filesystem</code>.</li>
 					<li>Run <code>ant compile deploy</code>. The service is compiled and deployed to the MUSE Web application.</li>
 					<li>Start Tomcat if it is not already started.</li>
-					<li>Using a browser, go to <a href="http://doc-lab.americas.hpqcorp.net:8080/muse/services">
-					http://doc-lab.americas.hpqcorp.net:8080/muse/services</a> and verify that the filesystem service is deployed.
+					<li>Using a browser, go to <a href="http://localhost:8080/muse/services">
+					http://localhost:8080/muse/services</a> and verify that the filesystem service is deployed.
 					</li>
 				</ol>
 			</section>
@@ -39,12 +39,12 @@
 				<title>Compile and Deploy Host</title>
 				<p>To compile and deploy the Host service:</p>
 				<ol>
-					<li>Using a text editor, open <code>WORK_DIR/generated/Host/build.properties</code>.</li>
+					<li>Using a text editor, open <code>WORK_DIR/generated/host/build.properties</code>.</li>
 					<li>Uncomment the <code>muse.webapp.dir</code> property and set it to the location where the MUSE Web application is installed. If you are using 
 					Tomcat and have <code>CATALINA_HOME</code> set, you do not need to modify this property.</li>
 					<li>Uncomment and modify the proxy settings if you require a proxy to connect to external Web sites.</li>
 					<li>Save and close build.properties.</li>
-					<li>From a command prompt, change directories to <code>WORK_DIR/generated/Host</code>.</li>
+					<li>From a command prompt, change directories to <code>WORK_DIR/generated/host</code>.</li>
 					<li>Run <code>ant compile deploy</code>. The service is compiled and deployed to the MUSE Web application.</li>
 					<li>Using a text editor, open <code>TOMCAT_HOME/webapps/muse/WEB-INF/classes/jndi-config.xml</code>.</li>
 					<li>From the <code><![CDATA[<service name="Host">]]></code> block, remove the <code>resourceIdentifierReferenceParameterName</code> 
@@ -52,14 +52,14 @@
 					in the WS Address headers.</li>
 					<li>Save and close jndi-config.xml.</li>
 					<li>Restart Tomcat if it is already started.</li>
-					<li>Using a browser, go to <a href="http://localhost:8080/muse/servlet/AxisServlet">
-					http://localhost:8080/muse/servlet/AxisServlet</a> and verify that the host service is deployed.
+					<li>Using a browser, go to <a href="http://localhost:8080/muse/services">
+					http://localhost:8080/muse/services</a> and verify that the host service is deployed.
 					</li>
 				</ol>
 			</section>
 			<p>
 				<img src="images/back.gif" alt="go to the previous step"/>
-				<a href="site:modresource">Back</a>
+				<a href="site:modservice">Back</a>
 				<img src="images/next.gif" alt="go to the next step"/>
 				<a href="site:test">Next</a>
 			</p>



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