[mashup-dev] svn commit r16440 - trunk/mashup/java/modules/hostobjects/src/org/wso2/mashup/hostobjects/wsrequest

svn at wso2.org svn at wso2.org
Thu May 1 08:00:38 PDT 2008


Author: keith
Date: Thu May  1 08:00:34 2008
New Revision: 16440

Log:

Adding a couple of null checks to prevent NPE


Modified:
   trunk/mashup/java/modules/hostobjects/src/org/wso2/mashup/hostobjects/wsrequest/WSRequestHostImpl.java

Modified: trunk/mashup/java/modules/hostobjects/src/org/wso2/mashup/hostobjects/wsrequest/WSRequestHostImpl.java
==============================================================================
--- trunk/mashup/java/modules/hostobjects/src/org/wso2/mashup/hostobjects/wsrequest/WSRequestHostImpl.java	(original)
+++ trunk/mashup/java/modules/hostobjects/src/org/wso2/mashup/hostobjects/wsrequest/WSRequestHostImpl.java	Thu May  1 08:00:34 2008
@@ -685,26 +685,33 @@
                                     .getChild(operationName);
                     Policy policy = axisOperation.getMessage(
                             WSDLConstants.MESSAGE_LABEL_IN_VALUE).getEffectivePolicy();
-                    List it = (List) policy.getAlternatives().next();
+                    if (policy != null) {
+                        List it = (List) policy.getAlternatives().next();
 
-                    //Process policy and build policy data
-                    RampartPolicyData policyData = RampartPolicyBuilder.build(it);
-                    SupportingToken supportingTokens = policyData.getSignedSupportingTokens();
-                    if (policyData.isTransportBinding()) {
-                        if (supportingTokens != null && supportingTokens.getTokens() != null &&
-                                supportingTokens.getTokens().size() > 0) {
-                            ArrayList tokens = supportingTokens.getTokens();
-                            for (Iterator iter = tokens.iterator(); iter.hasNext();) {
-
-                                Token token = (Token) iter.next();
-                                if (token instanceof UsernameToken) {
-                                    needRampart = true;
-                                } else {
-                                    throw new MashupFault("unsupportedSignedSupportingToken " +
-                                                               "{" + token.getName()
-                                                                       .getNamespaceURI()
-                                                                       + "}" + token.getName()
-                                                                       .getLocalPart());
+                        //Process policy and build policy data
+                        RampartPolicyData policyData = RampartPolicyBuilder.build(it);
+                        if (policyData != null) {
+                            SupportingToken supportingTokens =
+                                    policyData.getSignedSupportingTokens();
+                            if (policyData.isTransportBinding()) {
+                                if (supportingTokens != null &&
+                                        supportingTokens.getTokens() != null &&
+                                        supportingTokens.getTokens().size() > 0) {
+                                    ArrayList tokens = supportingTokens.getTokens();
+                                    for (Iterator iter = tokens.iterator(); iter.hasNext();) {
+
+                                        Token token = (Token) iter.next();
+                                        if (token instanceof UsernameToken) {
+                                            needRampart = true;
+                                        } else {
+                                            throw new MashupFault(
+                                                    "unsupportedSignedSupportingToken " +
+                                                            "{" + token.getName()
+                                                            .getNamespaceURI()
+                                                            + "}" + token.getName()
+                                                            .getLocalPart());
+                                        }
+                                    }
                                 }
                             }
                         }



More information about the Mashup-dev mailing list