You are viewing a plain text version of this content. The canonical link for it is here.
Posted to muse-commits@ws.apache.org by wi...@apache.org on 2005/09/27 17:56:06 UTC

svn commit: r291979 - in /webservices/muse/trunk/src/examples/client/src/java/org/apache/ws/client/muse/client: ManageableResource.java impl/ManageableResourceImpl.java

Author: wire
Date: Tue Sep 27 08:56:03 2005
New Revision: 291979

URL: http://svn.apache.org/viewcvs?rev=291979&view=rev
Log:
Added Javadocs

Modified:
    webservices/muse/trunk/src/examples/client/src/java/org/apache/ws/client/muse/client/ManageableResource.java
    webservices/muse/trunk/src/examples/client/src/java/org/apache/ws/client/muse/client/impl/ManageableResourceImpl.java

Modified: webservices/muse/trunk/src/examples/client/src/java/org/apache/ws/client/muse/client/ManageableResource.java
URL: http://svn.apache.org/viewcvs/webservices/muse/trunk/src/examples/client/src/java/org/apache/ws/client/muse/client/ManageableResource.java?rev=291979&r1=291978&r2=291979&view=diff
==============================================================================
--- webservices/muse/trunk/src/examples/client/src/java/org/apache/ws/client/muse/client/ManageableResource.java (original)
+++ webservices/muse/trunk/src/examples/client/src/java/org/apache/ws/client/muse/client/ManageableResource.java Tue Sep 27 08:56:03 2005
@@ -10,6 +10,7 @@
 
 import org.apache.ws.addressing.EndpointReference;
 import org.apache.ws.addressing.XmlBeansEndpointReference;
+import org.apache.ws.client.muse.client.impl.ManageableResourceImpl;
 import org.apache.ws.client.muse.client.impl.exceptions.FaultException;
 import org.apache.ws.client.muse.client.impl.exceptions.UnexpectedServerResponseException;
 import org.apache.ws.client.muse.client.impl.notification.NotifyableResourceImpl;
@@ -62,46 +63,89 @@
 			UnexpectedServerResponseException, URISyntaxException, IOException,
 			XmlException;
 
+	/** 
+	 * Returns a specific property value as a String.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement GetResourceProperty for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */	
 	public abstract String getPropertyAsString(QName propertyName)
 			throws FaultException, URISyntaxException, IOException,
 			XmlException, UnexpectedServerResponseException;
 
 	public abstract EndpointReference getEpr();
 
-	/* Returns a specific property value as a double.
-	 * 
-	 */
+	/** 
+	 * Returns a specific property value as a double.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement GetResourceProperty for this method to work.
+	 * @return
+	 * @throws FaultException	 * 
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */	
 	public abstract double getPropertyAsDouble(QName propertyName)
 			throws FaultException, URISyntaxException, IOException,
 			XmlException, UnexpectedServerResponseException;
 
-	/* 
+	/** 
 	 * Returns a specific property value as an integer.
-	 */
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement GetResourceProperty for this method to work.
+	 * @return
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */	
 	public abstract int getPropertyAsInt(QName propertyName)
 			throws FaultException, URISyntaxException, IOException,
 			XmlException, UnexpectedServerResponseException;
 
-	/* 
-	 * Returns a specific property value as a bolean.
-	 */
+	/** 
+	 * Returns a specific property value as a boolean.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement GetResourceProperty for this method to work.
+	 * @return
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */	
 	public abstract boolean getPropertyAsBoolean(QName propertyName)
 			throws FaultException, URISyntaxException, IOException,
 			XmlException, UnexpectedServerResponseException;
 
-	/* Returns a specific property value as a untyped property as XMLObject[]. For clients
-	 * preferring to parse pure XML.
-	 * 
-	 */
+	/** 
+	 * Returns a specific property value as a untyped property as XMLObject[].
+	 * resource properties document. For clients preferring to parse pure XML.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement GetResourceProperty for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */	
 	public abstract XmlObject[] getProperty(QName propertyName)
 			throws FaultException, URISyntaxException, IOException,
 			XmlException, UnexpectedServerResponseException;
 
+
 	/**
 	 * Returns a list of QNames of valid wsrf properties for this resource.
 	 * <b>Note:</b> this operation may not be supported by this resource. 
 	 * A resource must implement QueryResourceProperties for this method to work.
 	 * @return
+	 * @throws FaultException
 	 * @throws URISyntaxException
 	 * @throws IOException
 	 * @throws XmlException
@@ -110,11 +154,21 @@
 	public abstract QName[] getPropertyQNames() throws URISyntaxException,
 			IOException, XmlException, UnexpectedServerResponseException,FaultException;
 	
-
+	/** 
+	 * Takes and array of QNames and returns an XMLObject[] with corresponding values.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement GetMultipleResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */	
 	public abstract XmlObject[] getMultipleResourceProperties(
 			QName[] requestedValues) throws URISyntaxException, IOException,
 			XmlException, UnexpectedServerResponseException,FaultException;
-
+	
 	/***************************** Notifications **************************/
 
 	/* (non-Javadoc)
@@ -122,7 +176,7 @@
 	 */
 	public abstract TopicExpression[] getTopics() throws FaultException,
 			URISyntaxException, IOException, XmlException,
-			UnexpectedServerResponseException,FaultException;
+			UnexpectedServerResponseException;
 
 	/* (non-Javadoc)
 	 * @see org.apache.ws.client.muse.client.impl.notification.Temp#isFixedTopicSet()
@@ -175,49 +229,198 @@
 
 	public abstract void destroy() throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException;
 
-	public abstract void updateProperty(QName property, double newValue)
-	throws URISyntaxException, IOException, XmlException,
-	UnexpectedServerResponseException, FaultException;
-
-public abstract void updateProperty(QName property, int newValue)
-	throws URISyntaxException, IOException, XmlException,
-	UnexpectedServerResponseException, FaultException;
-
-public abstract void updateProperty(QName property, float newValue)
-	throws URISyntaxException, IOException, XmlException,
-	UnexpectedServerResponseException, FaultException;
-
-public abstract void updateProperty(QName property, String newValue)
-	throws URISyntaxException, IOException, XmlException,
-	UnexpectedServerResponseException, FaultException;
-
-public abstract void insertProperty(QName property, double newValue)
-	throws URISyntaxException, IOException, XmlException,
-	UnexpectedServerResponseException, FaultException;
-
-public abstract void insertProperty(QName property, int newValue)
-	throws URISyntaxException, IOException, XmlException,
-	UnexpectedServerResponseException, FaultException;
-
-public abstract void insertProperty(QName property, float newValue)
-	throws URISyntaxException, IOException, XmlException,
-	UnexpectedServerResponseException, FaultException;
-
-public abstract void insertProperty(QName property, String newValue)
-	throws URISyntaxException, IOException, XmlException,
-	UnexpectedServerResponseException, FaultException;
-
-public abstract void deleteProperty(QName propertyToDelete)
-	throws URISyntaxException, IOException, XmlException,
-	UnexpectedServerResponseException, FaultException;
-
-/* updateProperties takes a SetPropertiesRequest instance which defines
-* Insert, Update and Delete requests and the order in which they were made.
-*/
-public abstract XmlObject setProperties(
-	SetPropertiesRequest modificationList)
-	throws URISyntaxException, IOException, XmlException,
-	UnexpectedServerResponseException, FaultException;
+	/** 
+	 * Updates the String contents for the QName component into the 
+	 * resource properties document.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */
+	public abstract void updateProperty(QName propertyName, String value)
+		throws FaultException, URISyntaxException, IOException, XmlException, 
+		UnexpectedServerResponseException;
+	
+	/** 
+	 * Updates the double contents for the QName component into the 
+	 * resource properties document.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException 
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */
+	public abstract void updateProperty(QName propertyName, double value)
+		throws FaultException, URISyntaxException, IOException, XmlException, 
+		UnexpectedServerResponseException;
+	
+	/** 
+	 * Updates the integer contents for the QName component into the 
+	 * resource properties document.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */
+	public abstract void updateProperty(QName propertyName, int value)
+		throws FaultException, URISyntaxException, IOException, XmlException, 
+		UnexpectedServerResponseException;
+	
+	/** 
+	 * Updates the float contents for the QName component into the 
+	 * resource properties document.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */
+	public abstract void updateProperty(QName propertyName, float value)
+		throws FaultException, URISyntaxException, IOException, XmlException, 
+		UnexpectedServerResponseException;
+
+	/** 
+	 * Updates the boolean contents for the QName component into the 
+	 * resource properties document.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */
+	public abstract void updateProperty(QName propertyName, boolean value)
+		throws FaultException, URISyntaxException, IOException, XmlException, 
+		UnexpectedServerResponseException;
+
+	/** 
+	 * Inserts the String contents for the QName component into the 
+	 * resource properties document.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */
+	public abstract void insertProperty(QName propertyName, String value)
+			throws FaultException, URISyntaxException, IOException, XmlException, 
+			UnexpectedServerResponseException;
+
+	/** 
+	 * Inserts the double contents for the QName component into the 
+	 * resource properties document.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */
+	public abstract void insertProperty(QName propertyName, double value)
+			throws FaultException, URISyntaxException, IOException, XmlException, 
+			UnexpectedServerResponseException;
+
+	/** 
+	 * Inserts the integer contents for the QName component into the 
+	 * resource properties document.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */
+	public abstract void insertProperty(QName propertyName, int value)
+			throws FaultException, URISyntaxException, IOException, XmlException, 
+			UnexpectedServerResponseException;
+
+	/** 
+	 * Inserts the boolean contents for the QName component into the 
+	 * resource properties document.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */
+	public abstract void insertProperty(QName propertyName, boolean value)
+		throws FaultException, URISyntaxException, IOException, XmlException, 
+		UnexpectedServerResponseException;
+
+	/** 
+	 * Inserts the float contents for the QName component into the 
+	 * resource properties document.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */
+	public abstract void insertProperty(QName propertyName, float value)
+			throws FaultException, URISyntaxException, IOException, XmlException, 
+			UnexpectedServerResponseException;
+
+	/** 
+	 * Deletes all property with the specific QName passed in.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work. 
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */
+	public abstract void deleteProperty(QName propertyName)
+			throws FaultException, URISyntaxException, IOException, XmlException, 
+			UnexpectedServerResponseException;
+
+	
 
+	/** 
+	 * Takes a SetPropertiesRequest instance which stores all Insert, Update and Delete 
+	 * requests in order.
+	 * <b>Note:</b> this operation may not be supported by this resource.
+	 * A resource must implement SetResourceProperties for this method to work.
+	 * @return
+	 * @throws FaultException
+	 * @throws URISyntaxException
+	 * @throws IOException
+	 * @throws XmlException
+	 * @throws UnexpectedServerResponseException
+	 */	
+	public abstract XmlObject setProperties(
+		SetPropertiesRequest modificationList)
+		throws URISyntaxException, IOException, XmlException,
+		UnexpectedServerResponseException, FaultException;
 
  }

Modified: webservices/muse/trunk/src/examples/client/src/java/org/apache/ws/client/muse/client/impl/ManageableResourceImpl.java
URL: http://svn.apache.org/viewcvs/webservices/muse/trunk/src/examples/client/src/java/org/apache/ws/client/muse/client/impl/ManageableResourceImpl.java?rev=291979&r1=291978&r2=291979&view=diff
==============================================================================
--- webservices/muse/trunk/src/examples/client/src/java/org/apache/ws/client/muse/client/impl/ManageableResourceImpl.java (original)
+++ webservices/muse/trunk/src/examples/client/src/java/org/apache/ws/client/muse/client/impl/ManageableResourceImpl.java Tue Sep 27 08:56:03 2005
@@ -22,10 +22,14 @@
 import java.net.URISyntaxException;
 import java.net.URL;
 import java.util.ArrayList;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Vector;
 
 import javax.xml.namespace.QName;
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -39,12 +43,17 @@
 import org.apache.ws.client.muse.client.impl.wsrf.SetPropertiesRequestImpl;
 import org.apache.ws.client.muse.client.model.SetPropertiesRequest;
 import org.apache.ws.muws.v1_0.capability.IdentityCapability;
+import org.apache.ws.service.testresource.TestResourcePropertyQNames;
 import org.apache.ws.util.XmlBeanUtils;
 import org.apache.xmlbeans.XmlCursor;
+import org.apache.xmlbeans.XmlDocumentProperties;
 import org.apache.xmlbeans.XmlException;
 import org.apache.xmlbeans.XmlObject;
 import org.apache.xmlbeans.XmlOptions;
 import org.apache.xmlbeans.impl.regex.ParseException;
+import org.apache.xmlbeans.impl.soap.Node;
+import org.apache.xmlbeans.impl.soap.SOAPElement;
+import org.apache.xmlbeans.impl.soap.SOAPException;
 import org.apache.xmlbeans.impl.values.XmlAnyUriImpl;
 import org.apache.xmlbeans.impl.values.XmlBooleanImpl;
 import org.apache.xmlbeans.impl.values.XmlDoubleImpl;
@@ -52,17 +61,28 @@
 import org.apache.xmlbeans.impl.values.XmlStringImpl;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.DeleteType;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.GetMultipleResourcePropertiesDocument;
+import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.GetResourcePropertyDocument;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.InsertType;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.QueryExpressionType;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.QueryResourcePropertiesDocument;
-import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.QueryResourcePropertiesResponseDocument;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.SetResourcePropertiesDocument;
+import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.QueryResourcePropertiesResponseDocument;
+import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.SetResourcePropertiesResponseDocument;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.UpdateType;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.GetMultipleResourcePropertiesDocument.GetMultipleResourceProperties;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.QueryResourcePropertiesDocument.QueryResourceProperties;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.SetResourcePropertiesDocument.SetResourceProperties;
+import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.impl.GetMultipleResourcePropertiesDocumentImpl;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.impl.GetMultipleResourcePropertiesResponseDocumentImpl;
+import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.impl.GetResourcePropertyDocumentImpl;
+import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.impl.QueryResourcePropertiesDocumentImpl;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.impl.SetResourcePropertiesResponseDocumentImpl;
+import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.impl.QueryResourcePropertiesDocumentImpl.QueryResourcePropertiesImpl;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Text;
+import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.impl.SetResourcePropertiesResponseDocumentImpl;
+import org.xmlsoap.schemas.soap.envelope.impl.FaultImpl;
 import org.xmlsoap.schemas.ws.x2004.x08.addressing.EndpointReferenceDocument;
 
 public class ManageableResourceImpl  {
@@ -78,7 +98,7 @@
 	/**
 	 * Creates a ManageableResource from a class that implements
 	 * EndpointReference.
-	 * 
+	 *
 	 * @param epr
 	 * @throws MalformedURLException
 	 */
@@ -89,10 +109,10 @@
 		this.rs = new ResourceStub(epr);
 		this.ss = new ServiceStub(new URL(epr.getAddress()));
 	}
-		
+
 	/**
 	 * Creates a MangeableResource from an EPR persisted to a URL.
-	 * 
+	 *
 	 * @param url
 	 * @throws MalformedURLException
 	 * @throws XmlException
@@ -105,7 +125,7 @@
 
 	/**
 	 * Creates a MangeableResource from an Sting based text.
-	 * 
+	 *
 	 * @param url
 	 * @throws MalformedURLException
 	 * @throws XmlException
@@ -122,7 +142,7 @@
 	public String getId() throws FaultException,
 			UnexpectedServerResponseException, URISyntaxException, IOException,
 			XmlException {
-		LOG.info("Calling getId on " + this.epr.getAddress()); 
+		LOG.info("Calling getId on " + this.epr.getAddress());
 		XmlObject[] parts = rs
 				.getResourceProperty(IdentityCapability.PROP_NAME_RESOURCE_ID);
 		for (int i = 0; i < parts.length; i++) {
@@ -146,7 +166,7 @@
 	 * @see org.apache.ws.client.muse.client.impl.ManageableResource#getPropertyAsString(javax.xml.namespace.QName)
 	 */
 	public String getPropertyAsString(QName propertyName) throws FaultException, URISyntaxException, IOException, XmlException, UnexpectedServerResponseException{
-		LOG.info("getting property value  "+propertyName+" from " + this.epr.getAddress()); 
+		LOG.info("getting property value  "+propertyName+" from " + this.epr.getAddress());
 		XmlObject[] parts = rs.getResourceProperty(propertyName);
 		for (int i = 0; i < parts.length; i++) {
 			XmlObject xmlObject = parts[i];
@@ -157,9 +177,9 @@
 			}
 		}
 		throw new UnexpectedServerResponseException(
-				"Server returned either an unrecognizable response or no String type was returned as a response.");		
+				"Server returned either an unrecognizable response or no String type was returned as a response.");
 	}
-	
+
 	/* (non-Javadoc)
 	 * @see org.apache.ws.client.muse.client.impl.ManageableResource#getEpr()
 	 */
@@ -185,13 +205,13 @@
 	}
 
 	/* Returns a specific property value as a double.
-	 * 
+	 *
 	 */
 	/* (non-Javadoc)
 	 * @see org.apache.ws.client.muse.client.impl.ManageableResource#getPropertyAsDouble(javax.xml.namespace.QName)
 	 */
 	public double getPropertyAsDouble(QName propertyName) throws FaultException, URISyntaxException, IOException, XmlException, UnexpectedServerResponseException {
-		LOG.info("getting property value  "+propertyName+" from " + this.epr.getAddress()); 
+		LOG.info("getting property value  "+propertyName+" from " + this.epr.getAddress());
 		XmlObject[] parts = rs.getResourceProperty(propertyName);
 		for (int i = 0; i < parts.length; i++) {
 			XmlObject xmlObject = parts[i];
@@ -202,17 +222,17 @@
 			}
 		}
 		throw new UnexpectedServerResponseException(
-		"Server returned either an unrecognizable response or no String type was returned as a response.");		
+		"Server returned either an unrecognizable response or no String type was returned as a response.");
 	}
 
-	/* 
+	/*
 	 * Returns a specific property value as an integer.
 	 */
 	/* (non-Javadoc)
 	 * @see org.apache.ws.client.muse.client.impl.ManageableResource#getPropertyAsInt(javax.xml.namespace.QName)
 	 */
 	public int getPropertyAsInt(QName propertyName) throws FaultException, URISyntaxException, IOException, XmlException, UnexpectedServerResponseException {
-		LOG.info("getting property value  "+propertyName+" from " + this.epr.getAddress()); 
+		LOG.info("getting property value  "+propertyName+" from " + this.epr.getAddress());
 		XmlObject[] parts = rs.getResourceProperty(propertyName);
 		for (int i = 0; i < parts.length; i++) {
 			XmlObject xmlObject = parts[i];
@@ -223,17 +243,17 @@
 			}
 		}
 		throw new UnexpectedServerResponseException(
-		"Server returned either an unrecognizable response or no String type was returned as a response.");		
+		"Server returned either an unrecognizable response or no String type was returned as a response.");
 	}
 
-	/* 
+	/*
 	 * Returns a specific property value as a bolean.
 	 */
 	/* (non-Javadoc)
 	 * @see org.apache.ws.client.muse.client.impl.ManageableResource#getPropertyAsBoolean(javax.xml.namespace.QName)
 	 */
 	public boolean getPropertyAsBoolean(QName propertyName) throws FaultException, URISyntaxException, IOException, XmlException, UnexpectedServerResponseException {
-		LOG.info("getting property value  "+propertyName+" from " + this.epr.getAddress()); 
+		LOG.info("getting property value  "+propertyName+" from " + this.epr.getAddress());
 		XmlObject[] parts = rs.getResourceProperty(propertyName);
 		for (int i = 0; i < parts.length; i++) {
 			XmlObject xmlObject = parts[i];
@@ -244,18 +264,18 @@
 			}
 		}
 		throw new UnexpectedServerResponseException(
-		"Server returned either an unrecognizable response or no boolean type was returned as a response.");		
+		"Server returned either an unrecognizable response or no boolean type was returned as a response.");
 	}
 
 	/* Returns a specific property value as a untyped property as XMLObject[]. For clients
 	 * preferring to parse pure XML.
-	 * 
+	 *
 	 */
 	/* (non-Javadoc)
 	 * @see org.apache.ws.client.muse.client.impl.ManageableResource#getProperty(javax.xml.namespace.QName)
 	 */
 	public XmlObject[] getProperty(QName propertyName) throws FaultException, URISyntaxException, IOException, XmlException, UnexpectedServerResponseException {
-		LOG.info("getting property value  "+propertyName+" from " + this.epr.getAddress()); 
+		LOG.info("getting property value  "+propertyName+" from " + this.epr.getAddress());
 		XmlObject[] parts = rs.getResourceProperty(propertyName);
 		return parts;
 	}
@@ -270,9 +290,9 @@
 		 XmlCursor cursor = expression.newCursor();
 		 cursor.setTextValue("/");
 		 cursor.dispose();
-		
+
         XmlObject parts = rs.sendRequest(queryDocument,"http://queryresourcepropertydocument","M");
-        
+
         if(!(parts instanceof QueryResourcePropertiesResponseDocument.QueryResourcePropertiesResponse))
         	throw new UnexpectedServerResponseException("Expected QueryResourcePropertiesResponseDocument but received "+parts.getClass().getName());
         QueryResourcePropertiesResponseDocument.QueryResourcePropertiesResponse response=(QueryResourcePropertiesResponseDocument.QueryResourcePropertiesResponse)parts;
@@ -307,16 +327,16 @@
 		for (int i = 0; i < requestedValues.length; i++) {
 			query.addResourceProperty(requestedValues[i]);
 		}
-		
+
 		//Now send the request
        XmlObject parts = rs.sendRequest(gmpDoc,"http://getmultipleresourcepropertydocument","M");
-       
+
        if(!(parts instanceof GetMultipleResourcePropertiesResponseDocumentImpl.GetMultipleResourcePropertiesResponseImpl))
        	throw new UnexpectedServerResponseException("Expected GetMultipleResourcePropertiesResponseDocumentImpl but received "+parts.getClass().getName());
 
        //type cast and walk the array to extract the responses
        GetMultipleResourcePropertiesResponseDocumentImpl.GetMultipleResourcePropertiesResponseImpl response = (GetMultipleResourcePropertiesResponseDocumentImpl.GetMultipleResourcePropertiesResponseImpl)parts;
-       
+
        //Create cursor to walk through the response.
        XmlCursor cursor = response.newCursor();
         cursor.toChild(0);
@@ -324,18 +344,18 @@
 
        XmlObject obj = cursor.getObject();
        Vector infoList = new Vector(20);
-       
+
        //extract the first XmlObject
        XmlObject prop=cursor.getObject();
        infoList.add(prop);
-       
+
        //walk the sibling list to extract all objects
        while(cursor.toNextSibling()){
        	prop=cursor.getObject();
            infoList.add(prop);
        }
        cursor.dispose();
-       
+
 		return (XmlObject[]) infoList.toArray(new XmlObject[0]);
 	}
 
@@ -351,7 +371,7 @@
 ////		XmlDocumentProperties query = resPropDoc.documentProperties();
 ////		XmlDocumentProperties query = resPropDoc.();
 ////		GetMultipleResourceProperties query = gmpDoc.addNewGetMultipleResourceProperties();
-//		
+//
 //		//Now send the request
 //		XmlObject parts = rs.sendRequest(resPropDoc,
 //				"http://docs.oasis-open.org/wsrf/rpw-1/GetResourcePropertyDocument/GetResourcePropertyDocumentRequest","M");
@@ -359,14 +379,14 @@
 ////       XmlObject parts = rs.sendRequest(gmpDoc,"http://getmultipleresourcepropertydocument","M");
 //
 //		if(!(parts instanceof GetResourcePropertyDocumentImpl))
-//			throw new UnexpectedServerResponseException("Expected GetResourcePropertyDocumentImpl but received "+parts.getClass().getName());	
+//			throw new UnexpectedServerResponseException("Expected GetResourcePropertyDocumentImpl but received "+parts.getClass().getName());
 ////       if(!(parts instanceof GetMultipleResourcePropertiesResponseDocumentImpl.GetMultipleResourcePropertiesResponseImpl))
 ////       	throw new UnexpectedServerResponseException("Expected GetMultipleResourcePropertiesResponseDocumentImpl but received "+parts.getClass().getName());
 //
 //       //type cast and walk the array to extract the responses
 //		GetResourcePropertyDocumentImpl response = (GetResourcePropertyDocumentImpl)parts;
 ////       GetMultipleResourcePropertiesResponseDocumentImpl.GetMultipleResourcePropertiesResponseImpl response = (GetMultipleResourcePropertiesResponseDocumentImpl.GetMultipleResourcePropertiesResponseImpl)parts;
-//       
+//
 //       //Create cursor to walk through the response.
 //       XmlCursor cursor = response.newCursor();
 //        cursor.toChild(0);
@@ -374,25 +394,25 @@
 //
 ////       XmlObject obj = cursor.getObject();
 ////       Vector infoList = new Vector(20);
-//       
+//
 //       //extract the first XmlObject
 //       XmlObject prop=cursor.getObject();
 ////       infoList.add(prop);
-////       
+////
 ////       //walk the sibling list to extract all objects
 ////       while(cursor.toNextSibling()){
 ////       	prop=cursor.getObject();
 ////           infoList.add(prop);
 ////       }
 //       cursor.dispose();
-//       
+//
 //       return prop;
 ////		return (XmlObject[]) infoList.toArray(new XmlObject[0]);
 //	}
 
 	/* Takes an XPath query and a dialect, and returns the results as an XMLObject[].
-	 * Operation returns a subset of the ResourceProperties or an XPath operation on 
-	 * the same. 
+	 * Operation returns a subset of the ResourceProperties or an XPath operation on
+	 * the same.
 	 */
 	public XmlObject[] queryResourceProperties(String xpathExp, String xpthDialect) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException {
 
@@ -403,17 +423,20 @@
 		//add the query expression
 		QueryExpressionType expression = query.addNewQueryExpression();
 		 //set the specific dialect to use
-		 expression.setDialect("http://www.w3.org/TR/1999/REC-xpath-19991116");
-		 //Manipulate the xml 
+		expression.setDialect("http://www.w3.org/TR/1999/REC-xpath-19991116");
+		 expression.setDialect(xpthDialect.trim());
+		 //Manipulate the xml
 		 XmlCursor cursor = expression.newCursor();
 		 //insert the xpath component
 		 cursor.setTextValue(xpathExp);
 		 cursor.dispose();
-		
+
        XmlObject parts = rs.sendRequest(queryDocument,"http://queryresourcepropertydocument","M");
+       if(parts instanceof FaultImpl)
+          	throw new FaultException(parts.toString());
        if(!(parts instanceof QueryResourcePropertiesResponseDocument.QueryResourcePropertiesResponse))
        	throw new UnexpectedServerResponseException("Expected QueryResourcePropertiesResponseDocument but received "+parts.getClass().getName());
-       
+
        //cast to response
        QueryResourcePropertiesResponseDocument.QueryResourcePropertiesResponse response=(QueryResourcePropertiesResponseDocument.QueryResourcePropertiesResponse)parts;
 
@@ -421,19 +444,19 @@
        cursor=response.newCursor();
        cursor.toChild(0);
        cursor.toFirstChild();
-       
+
        //store all encountered responses
        Vector infoList = new Vector(20);
        XmlObject propValue=cursor.getObject();
        infoList.add(propValue);
-       
+
        //for numerous response components
        while(cursor.toNextSibling()){
        		propValue=cursor.getObject();
             infoList.add(propValue);
        }
        cursor.dispose();
-       
+
        //build the response
        return (XmlObject[]) infoList.toArray(new XmlObject[0]);
 	}
@@ -445,24 +468,28 @@
 		boolean completed =setRequest.addUpdateRequest(property,updates);
 		setProperties(setRequest);
 		success = true;
-		return success;
+	  return success;
 	}
-	
+
 	public void updateProperty(QName property, double newValue) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException{
 		String[] updates = {String.valueOf(newValue)};
-		boolean success = updateProperty(property, updates);
+		updateProperty(property, updates);
 	}
 	public void updateProperty(QName property, int newValue) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException{
 		String[] updates = {String.valueOf(newValue)};
-		boolean success = updateProperty(property, updates);
+		updateProperty(property, updates);
 	}
 	public void updateProperty(QName property, float newValue) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException{
 		String[] updates = {String.valueOf(newValue)};
-		boolean success = updateProperty(property, updates);
+		updateProperty(property, updates);
 	}
 	public void updateProperty(QName property, String newValue) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException{
 		String[] updates = {newValue};
-		boolean success = updateProperty(property, updates);
+		updateProperty(property, updates);
+	}
+	public void updateProperty(QName property, boolean newValue) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException{
+		String[] updates = {String.valueOf(newValue)};
+		updateProperty(property, updates);
 	}
 
 	private void insertProperty(QName property, String[] updates) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException {
@@ -487,106 +514,40 @@
 		insertProperty(property, inserts);
 	}
 	public void insertProperty(QName property, String newValue) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException{
-		 String[] inserts = {newValue};
+		String[] inserts = {newValue};
+		insertProperty(property, inserts);
+	}
+	public void insertProperty(QName property, boolean newValue) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException{
+		 String[] inserts = {String.valueOf(newValue)};
 		 insertProperty(property, inserts);
 	}
-	
+
 	public void deleteProperty(QName propertyToDelete) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException{
 		boolean success = false;
-		//insert that property
-			SetPropertiesRequestImpl setRequest = new SetPropertiesRequestImpl();
-			boolean completed =setRequest.addDeleteRequest(propertyToDelete);
-			setProperties(setRequest);
-			 success = true;
+		//delete that property
+		SetPropertiesRequestImpl setRequest = new SetPropertiesRequestImpl();
+		boolean completed =setRequest.addDeleteRequest(propertyToDelete);
+		setProperties(setRequest);
 	}
 
-//	public boolean updatePropertyWithDouble(QName price, double newVal) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException {
-//		boolean success = false;
-//		
-//		//build the change document
-//		SetResourcePropertiesDocument setPropsDocument = SetResourcePropertiesDocument.Factory.newInstance();
-//		//add the set properties component
-//		SetResourceProperties query = setPropsDocument.addNewSetResourceProperties();
-//		//add the update expression
-//		UpdateType modification = query.addNewUpdate();
-//		//Manipulate the xml 
-//		XmlCursor cursor = modification.newCursor();
-//		//Now begin to add each update element
-//		//tmp string conversion?
-//		String txt = String.valueOf(newVal);
-////		modification.
-//		//add all update parameters to the current node
-//		
-////		addItemsToNode(price, cursor, txt);
-////		QName[] updateQnameList = new QName[2]; updateQnameList[0] = TestResourcePropertyQNames.PRICE;
-//		QName[] updateQnameList = new QName[1]; updateQnameList[0] = TestResourcePropertyQNames.PRICE;
-////		updateQnameList[1] = TestResourcePropertyQNames.NAME;
-////		String[] updatePropValList = new String[2]; updatePropValList[0]=String.valueOf(newVal);
-//		String[] updatePropValList = new String[1]; updatePropValList[0]=String.valueOf(newVal);
-////		updatePropValList[1]="NewlyTHoughtOfName";
-//		
-//		addItemsToNode(updateQnameList, cursor, updatePropValList);
-//		
-//		
-////		validateXmlBean(setPropsDocument);
-//		
-////		//now add the other two elements
-////		DeleteType delete = query.addNewDelete();
-////		delete.setResourceProperty(TestResourcePropertyQNames.OPERATIONALSTATUS);
-////		InsertType insert = query.addNewInsert();
-////		XmlCursor iCursor = insert.newCursor();
-////		QName[] updateQnameList = new QName[1]; updateQnameList[0] = TestResourcePropertyQNames.NAME;
-////		String[] updatePropValList = new String[1]; updatePropValList[0]=String.valueOf("NewName");
-////		addItemsToNode(updateQnameList,iCursor,updatePropValList);
-//		
-////		XmlObject parts = rs.sendRequest(queryDocument,"http://updateresourcepropertydocument","M");
-//		XmlObject parts = rs.sendRequest(setPropsDocument,"http://docs.oasis-open.org/wsrf/2004/06/WS-ResourceProperties/SetResourceProperties","M");
-//		if(!(parts instanceof SetResourcePropertiesResponseDocumentImpl.SetResourcePropertiesResponseImpl))
-//			throw new UnexpectedServerResponseException("Expected SetResourcePropertiesResponseDocumentImpl but received "+parts.getClass().getName());
-//		
-//		//cast to response
-//		SetResourcePropertiesResponseDocumentImpl.SetResourcePropertiesResponseImpl response 
-//		=(SetResourcePropertiesResponseDocumentImpl.SetResourcePropertiesResponseImpl)parts;
-//		
-//		//navigate the document to retrieve all the properties
-//		cursor=response.newCursor();
-//		cursor.toChild(0);
-//		cursor.toFirstChild();
-//		
-//		//store all encountered responses
-//		Vector infoList = new Vector(20);
-//		XmlObject propValue=cursor.getObject();
-//		infoList.add(propValue);
-//		
-//		//for numerous response components
-//		while(cursor.toNextSibling()){
-//			propValue=cursor.getObject();
-//			infoList.add(propValue);
-//		}
-//		cursor.dispose();
-//		success = true;	
-//		
-//		return success;
-//	}
-
 	/* updateProperties takes a SetPropertiesRequest instance which defines
 	 * Insert, Update and Delete requests and the order in which they were made.
 	 */
 	public XmlObject setProperties(SetPropertiesRequest modificationList) throws URISyntaxException, IOException, XmlException, UnexpectedServerResponseException, FaultException {
-		
+
 		//build the SetResourceProperties document
-		SetResourcePropertiesDocument setPropsDocument = 
+		SetResourcePropertiesDocument setPropsDocument =
 			SetResourcePropertiesDocument.Factory.newInstance();
 		//add the set properties component
 		SetResourceProperties request = setPropsDocument.addNewSetResourceProperties();
 		XmlCursor cursor = null;
-		
+
 		//iterate through the SetPropertiesRequest to populate the SetResourcePropertiesDocument
 		for (int i = 0; i < modificationList.getAllResourcesIndex(); i++) {
-			
+
 			//Retrieve the current object
 			Object resMod = modificationList.getAllSetResourceRequests().get(i);
-			
+
 			if (resMod instanceof QName) { //Then this is a delete request
 				QName deleteParameter = (QName) resMod;
 				//Then create the xml for the delete
@@ -599,51 +560,53 @@
 					//is an insert request.  Building appropriate xml
 					//add the insert expression
 					InsertType modification = request.addNewInsert();
-					//Manipulate the xml 
+					//Manipulate the xml
 					cursor = modification.newCursor();
-					
+
 					//add all update parameters to the current node
 					addItemsToNode(custRequest.getProperty(),cursor,custRequest.getPropetyValues());
 				}
 				else{//is an update request.  Building appropriate xml
 					//add the update expression
 					UpdateType modification = request.addNewUpdate();
-					//Manipulate the xml 
+					//Manipulate the xml
 					cursor = modification.newCursor();
-					
+
 					//add all update parameters to the current node
 					addItemsToNode(custRequest.getProperty(),cursor,custRequest.getPropetyValues());
 				}
 			}
 		}
-		
-//		validateXmlBean(setPropsDocument);
+
+		validateXmlBean(setPropsDocument);
 
 		XmlObject parts = rs.sendRequest(setPropsDocument,"http://docs.oasis-open.org/wsrf/2004/06/WS-ResourceProperties/SetResourceProperties","M");
+		if(parts instanceof FaultImpl)
+			throw new FaultException(parts.toString());
 		if(!(parts instanceof SetResourcePropertiesResponseDocumentImpl.SetResourcePropertiesResponseImpl))
 			throw new UnexpectedServerResponseException("Expected SetResourcePropertiesResponseDocumentImpl but received "+parts.getClass().getName());
-		
+
 		//cast to response
-		SetResourcePropertiesResponseDocumentImpl.SetResourcePropertiesResponseImpl response 
+		SetResourcePropertiesResponseDocumentImpl.SetResourcePropertiesResponseImpl response
 		=(SetResourcePropertiesResponseDocumentImpl.SetResourcePropertiesResponseImpl)parts;
-		
+
 		//navigate the document to retrieve all the properties
 		cursor=response.newCursor();
 		cursor.toChild(0);
 		cursor.toFirstChild();
-		
+
 		//store all encountered responses
 		Vector infoList = new Vector(20);
 		XmlObject propValue=cursor.getObject();
 		infoList.add(propValue);
-		
+
 		//for numerous response components
 		while(cursor.toNextSibling()){
 			propValue=cursor.getObject();
 			infoList.add(propValue);
 		}
 		cursor.dispose();
-		
+
 		return propValue;
 	}
 
@@ -653,27 +616,20 @@
 	private void addItemsToNode(QName propQname, XmlCursor cursor, String[] propList) throws IllegalArgumentException {
 		//store away reference to original cursor location
 		XmlCursor origCursorLocation = cursor.newCursor();
-		
+
 		//For each property value encountered, create sub nodes
 		for (int i = 0; i < propList.length; i++) {
 			XmlCursor listCursorPosition = origCursorLocation.newCursor();
 			cursor = origCursorLocation.newCursor();
-			//Create a new node 
+			//Create a new node
 			cursor.insertElementWithText(propQname,propList[i]);
-//			   System.out.println("QName:"+propQname);
-//			   System.out.println("Val:"+cursor.getName());
-//			   System.out.println("Val:"+listCursorPosition.getName());
-			   boolean suc = cursor.toParent();
-//			   System.out.println("To Par:"+suc);
-//			   System.out.println("Val:"+cursor.getName());
-//			   System.out.println("Val:"+listCursorPosition.getName());
+			cursor.toParent();
 
 			cursor.toChild(propQname);
 			//move the cursor positioning
 			listCursorPosition.toNextToken();
 			//stitch the node into new location
 			cursor.copyXml(listCursorPosition);
-//			   System.out.println("Val-q:"+cursor.getName());
 			//remove the original node
 			cursor.removeXml();
 			//clean up
@@ -683,20 +639,19 @@
 	}
 
 //	public XmlObject[] getMetric(QName testmetric) throws FaultException, URISyntaxException, IOException, XmlException, UnexpectedServerResponseException {
-//		LOG.info("getting Metric value  "+testmetric+" from " + this.epr.getAddress()); 
+//		LOG.info("getting Metric value  "+testmetric+" from " + this.epr.getAddress());
 //		XmlObject[] parts = rs.getResourceProperty(testmetric);
 //		if(parts==null||parts.length==0){
 //			throw new UnexpectedServerResponseException(
-//			"Server returned no metric values in response.");		
+//			"Server returned no metric values in response.");
 //		}
-//		
+//
 //		XmlObject part = parts[0];
 //		part.changeType();
-//		
+//
 //		return parts;
 //	}
 
-	
 	public static void validateXmlBean(XmlObject requestXBean) throws ParseException{
 	    XmlOptions validateOptions = new XmlOptions(  );
 	    List       errorList = new ArrayList(  );
@@ -721,9 +676,9 @@
 	       throw new ParseException(
 	                                 strBuf.toString(  ),0 );
 	    }
-	        
+
 	}
-	
+
 	//helper method to create SetPropertiesRequest instance
 	public SetPropertiesRequest createNewSetPropertiesRequest(){
 		return new SetPropertiesRequestImpl();