You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsrf-commits@ws.apache.org by sc...@apache.org on 2005/10/25 18:33:40 UTC

svn commit: r328406 - in /webservices/wsrf/trunk: ./ src/java/org/apache/ws/resource/impl/ResourceCapabilityImpl.java

Author: scamp
Date: Tue Oct 25 09:33:20 2005
New Revision: 328406

URL: http://svn.apache.org/viewcvs?rev=328406&view=rev
Log:
fixed potential NullPointer

Modified:
    webservices/wsrf/trunk/   (props changed)
    webservices/wsrf/trunk/src/java/org/apache/ws/resource/impl/ResourceCapabilityImpl.java

Propchange: webservices/wsrf/trunk/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Tue Oct 25 09:33:20 2005
@@ -10,3 +10,4 @@
 wsrf.iml.bak
 .project
 .classpath
+*.jpage

Modified: webservices/wsrf/trunk/src/java/org/apache/ws/resource/impl/ResourceCapabilityImpl.java
URL: http://svn.apache.org/viewcvs/webservices/wsrf/trunk/src/java/org/apache/ws/resource/impl/ResourceCapabilityImpl.java?rev=328406&r1=328405&r2=328406&view=diff
==============================================================================
--- webservices/wsrf/trunk/src/java/org/apache/ws/resource/impl/ResourceCapabilityImpl.java (original)
+++ webservices/wsrf/trunk/src/java/org/apache/ws/resource/impl/ResourceCapabilityImpl.java Tue Oct 25 09:33:20 2005
@@ -24,7 +24,10 @@
 import javax.wsdl.Definition;
 import javax.wsdl.Fault;
 import javax.wsdl.Import;
+import javax.wsdl.Input;
+import javax.wsdl.Message;
 import javax.wsdl.Operation;
+import javax.wsdl.Output;
 import javax.wsdl.PortType;
 import javax.wsdl.factory.WSDLFactory;
 import javax.wsdl.xml.WSDLReader;
@@ -612,14 +615,19 @@
  * @throws InvalidWsrfWsdlException
  */
 private void validateOperationIsDefined(Operation op) throws InvalidWsrfWsdlException {
-	if(op.getInput().getMessage().isUndefined() == true)
-	 {
-		 throw new InvalidWsrfWsdlException("The import for the namespace: " + op.getInput().getMessage().getQName().getNamespaceURI() + " was either undefined or is invalid.  Please check your WSDL imports."); 
-	 }
-	 if(op.getOutput().getMessage().isUndefined() == true)
-	 {
-		 throw new InvalidWsrfWsdlException("The import for the namespace: " + op.getInput().getMessage().getQName().getNamespaceURI() + " was either undefined or is invalid.  Please check your WSDL imports."); 
-	 }
+	Input input = op.getInput();
+	if(input != null)
+	{
+		Message message = input.getMessage();
+		determineIfMessageIsUndefined(op, message);		
+	}
+	Output output = op.getOutput();
+	if(output != null)
+	{
+		Message message = output.getMessage();
+		determineIfMessageIsUndefined(op, message);	
+	}
+	
 	 Iterator iterator = op.getFaults().values().iterator();
 	 while (iterator.hasNext()) {
 		 Fault fault = (Fault) iterator.next();
@@ -627,6 +635,18 @@
 		 {
 			 throw new InvalidWsrfWsdlException("The import for the namespace: " + op.getInput().getMessage().getQName().getNamespaceURI() + " was either undefined or is invalid.  Please check your WSDL imports.");
 		 }
+	}
+}
+
+/**
+ * @param op
+ * @param message
+ * @throws InvalidWsrfWsdlException
+ */
+private void determineIfMessageIsUndefined(Operation op, Message message) throws InvalidWsrfWsdlException {
+	if(message.isUndefined() == true)
+	{
+			throw new InvalidWsrfWsdlException("The import for the namespace: " + op.getInput().getMessage().getQName().getNamespaceURI() + " was either undefined or is invalid.  Please check your WSDL imports.");
 	}
 }