You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by sh...@apache.org on 2010/12/21 15:03:04 UTC
svn commit: r1051498 -
/axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/RampartEngine.java
Author: shankar
Date: Tue Dec 21 14:03:03 2010
New Revision: 1051498
URL: http://svn.apache.org/viewvc?rev=1051498&view=rev
Log:
Fixing issue RAMPART-290
Modified:
axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/RampartEngine.java
Modified: axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/RampartEngine.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/RampartEngine.java?rev=1051498&r1=1051497&r2=1051498&view=diff
==============================================================================
--- axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/RampartEngine.java (original)
+++ axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/RampartEngine.java Tue Dec 21 14:03:03 2010
@@ -327,46 +327,41 @@ public class RampartEngine {
private boolean isSecurityFault(RampartMessageData rmd) {
-
- SOAPEnvelope soapEnvelope = rmd.getMsgContext().getEnvelope();
-
- SOAPFault soapFault = soapEnvelope.getBody().getFault();
-
- // This is not a soap fault
- if (soapFault == null) {
- return false;
- }
-
- String soapVersionURI = rmd.getMsgContext().getEnvelope().getNamespace().getNamespaceURI();
-
- if (soapVersionURI.equals(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI) ) {
-
- SOAPFaultCode faultCode = soapFault.getCode();
-
- // This is a fault processing the security header
- if (faultCode.getTextAsQName().getNamespaceURI().equals(WSConstants.WSSE_NS)) {
- return true;
- }
-
-
- } else if (soapVersionURI.equals(SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI)) {
-
- //TODO AXIOM API returns only one fault sub code, there can be many
- SOAPFaultSubCode faultSubCode = soapFault.getCode().getSubCode();
-
- if (faultSubCode != null) {
- SOAPFaultValue faultSubCodeValue = faultSubCode.getValue();
-
- // This is a fault processing the security header
- if (faultSubCodeValue != null &&
- faultSubCodeValue.getTextAsQName().getNamespaceURI().equals(WSConstants.WSSE_NS)) {
- return true;
- }
- }
-
- }
-
- return false;
- }
+ SOAPEnvelope soapEnvelope = rmd.getMsgContext().getEnvelope();
+ SOAPFault soapFault = soapEnvelope.getBody().getFault();
+
+ // This is not a soap fault
+ if (soapFault == null) {
+ return false;
+ }
+
+ String soapVersionURI = rmd.getMsgContext().getEnvelope().getNamespace().getNamespaceURI();
+ SOAPFaultCode faultCode = soapFault.getCode();
+ if(faultCode == null){
+ //If no fault code is given, then it can't be security fault
+ return false;
+ }
+
+ if (soapVersionURI.equals(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI)) {
+ // This is a fault processing the security header
+ if (faultCode.getTextAsQName().getNamespaceURI().equals(WSConstants.WSSE_NS)) {
+ return true;
+ }
+ } else if (soapVersionURI.equals(SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI)) {
+ // TODO AXIOM API returns only one fault sub code, there can be many
+ SOAPFaultSubCode faultSubCode = faultCode.getSubCode();
+ if (faultSubCode != null) {
+ SOAPFaultValue faultSubCodeValue = faultSubCode.getValue();
+
+ // This is a fault processing the security header
+ if (faultSubCodeValue != null && faultSubCodeValue.getTextAsQName().
+ getNamespaceURI().equals(WSConstants.WSSE_NS)) {
+ return true;
+ }
+ }
+ }
+
+ return false;
+ }
}