Details
Description
recent changes to ServletEnvironmentRequest break our 2.3 compliance needed to support SAP NetWeaver 2004
suggested fix:
Index: D:/Documents and Settings/pbreau/workspace/ICEfaces/core/src/com/icesoft/faces/env/ServletEnvironmentRequest.java
===================================================================
--- D:/Documents and Settings/pbreau/workspace/ICEfaces/core/src/com/icesoft/faces/env/ServletEnvironmentRequest.java (revision 14675)
+++ D:/Documents and Settings/pbreau/workspace/ICEfaces/core/src/com/icesoft/faces/env/ServletEnvironmentRequest.java (working copy)
@@ -33,15 +33,6 @@
package com.icesoft.faces.env;
-import com.icesoft.jasper.Constants;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import javax.servlet.RequestDispatcher;
-import javax.servlet.ServletInputStream;
-import javax.servlet.http.Cookie;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
@@ -52,6 +43,20 @@
import java.util.List;
import java.util.Map;
+import javax.servlet.RequestDispatcher;
+import javax.servlet.Servlet;
+import javax.servlet.ServletConfig;
+import javax.servlet.ServletContext;
+import javax.servlet.ServletInputStream;
+import javax.servlet.http.Cookie;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import com.icesoft.jasper.Constants;
+
/**
* A wrapper for HttpServletRequest.
* <p/>
@@ -187,11 +192,20 @@
protocol = this.request.getProtocol();
remoteAddr = this.request.getRemoteAddr();
remoteHost = this.request.getRemoteHost();
- remotePort = this.request.getRemotePort();
- localName = this.request.getLocalName();
- localAddr = this.request.getLocalAddr();
- localPort = this.request.getLocalPort();
+ initialize2p4Properties(request);
}
+
+ private void initialize2p4Properties(Object request){
+ getSession().getServletContext();
+ ServletContext context = getSession().getServletContext();
+ if( context.getMajorVersion() > 1 && context.getMinorVersion() > 3 ){
+ remotePort = this.request.getRemotePort();
+ localName = this.request.getLocalName();
+ localAddr = this.request.getLocalAddr();
+ localPort = this.request.getLocalPort();
+ }
+
+ }
public boolean isUserInRole(String role) {
if (null != acegiAuthWrapper) {
suggested fix:
Index: D:/Documents and Settings/pbreau/workspace/ICEfaces/core/src/com/icesoft/faces/env/ServletEnvironmentRequest.java
===================================================================
--- D:/Documents and Settings/pbreau/workspace/ICEfaces/core/src/com/icesoft/faces/env/ServletEnvironmentRequest.java (revision 14675)
+++ D:/Documents and Settings/pbreau/workspace/ICEfaces/core/src/com/icesoft/faces/env/ServletEnvironmentRequest.java (working copy)
@@ -33,15 +33,6 @@
package com.icesoft.faces.env;
-import com.icesoft.jasper.Constants;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import javax.servlet.RequestDispatcher;
-import javax.servlet.ServletInputStream;
-import javax.servlet.http.Cookie;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
@@ -52,6 +43,20 @@
import java.util.List;
import java.util.Map;
+import javax.servlet.RequestDispatcher;
+import javax.servlet.Servlet;
+import javax.servlet.ServletConfig;
+import javax.servlet.ServletContext;
+import javax.servlet.ServletInputStream;
+import javax.servlet.http.Cookie;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import com.icesoft.jasper.Constants;
+
/**
* A wrapper for HttpServletRequest.
* <p/>
@@ -187,11 +192,20 @@
protocol = this.request.getProtocol();
remoteAddr = this.request.getRemoteAddr();
remoteHost = this.request.getRemoteHost();
- remotePort = this.request.getRemotePort();
- localName = this.request.getLocalName();
- localAddr = this.request.getLocalAddr();
- localPort = this.request.getLocalPort();
+ initialize2p4Properties(request);
}
+
+ private void initialize2p4Properties(Object request){
+ getSession().getServletContext();
+ ServletContext context = getSession().getServletContext();
+ if( context.getMajorVersion() > 1 && context.getMinorVersion() > 3 ){
+ remotePort = this.request.getRemotePort();
+ localName = this.request.getLocalName();
+ localAddr = this.request.getLocalAddr();
+ localPort = this.request.getLocalPort();
+ }
+
+ }
public boolean isUserInRole(String role) {
if (null != acegiAuthWrapper) {
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
Philip Breau
created issue -
Ken Fyten
made changes -
Field | Original Value | New Value |
---|---|---|
Assignee | Mircea Toma [ mircea.toma ] |
Ken Fyten
made changes -
Fix Version/s | 1.6.1 [ 10070 ] | |
Assignee Priority | P2 |
Mircea Toma
made changes -
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Ken Fyten
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |
Assignee Priority | P2 | |
Assignee | Mircea Toma [ mircea.toma ] |