[pal-cvs 2721] [453] fixed mode switching and parameter handling.

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2007年 8月 11日 (土) 16:32:24 JST


Revision: 453
          http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi?root=pal&view=rev&rev=453
Author:   shinsuke
Date:     2007-08-11 16:32:24 +0900 (Sat, 11 Aug 2007)

Log Message:
-----------
fixed mode switching and parameter handling. 

Modified Paths:
--------------
    webproxy/trunk/pom.xml
    webproxy/trunk/src/main/java/jp/sf/pal/webproxy/WebProxyConstants.java
    webproxy/trunk/src/main/java/jp/sf/pal/webproxy/filter/WebProxyFilter.java
    webproxy/trunk/src/main/java/jp/sf/pal/webproxy/service/HtmlContentService.java
    webproxy/trunk/src/main/webapp/view/edit/editParameters.html


-------------- next part --------------
Modified: webproxy/trunk/pom.xml
===================================================================
--- webproxy/trunk/pom.xml	2007-08-11 07:30:28 UTC (rev 452)
+++ webproxy/trunk/pom.xml	2007-08-11 07:32:24 UTC (rev 453)
@@ -119,7 +119,7 @@
     <dependency>
       <groupId>org.seasar.teeda</groupId>
       <artifactId>teeda-extension</artifactId>
-      <version>1.0.9</version>
+      <version>1.0.10-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.seasar.teeda</groupId>

Modified: webproxy/trunk/src/main/java/jp/sf/pal/webproxy/WebProxyConstants.java
===================================================================
--- webproxy/trunk/src/main/java/jp/sf/pal/webproxy/WebProxyConstants.java	2007-08-11 07:30:28 UTC (rev 452)
+++ webproxy/trunk/src/main/java/jp/sf/pal/webproxy/WebProxyConstants.java	2007-08-11 07:32:24 UTC (rev 453)
@@ -20,4 +20,6 @@
     public static final String START_PAGE = "start-page";
 
     public static final String UTF_8 = "UTF-8";
+
+    public static final String PARAMETERS = PREFIX + "Params_";
 }

Modified: webproxy/trunk/src/main/java/jp/sf/pal/webproxy/filter/WebProxyFilter.java
===================================================================
--- webproxy/trunk/src/main/java/jp/sf/pal/webproxy/filter/WebProxyFilter.java	2007-08-11 07:30:28 UTC (rev 452)
+++ webproxy/trunk/src/main/java/jp/sf/pal/webproxy/filter/WebProxyFilter.java	2007-08-11 07:32:24 UTC (rev 453)
@@ -7,9 +7,12 @@
 import javax.portlet.ActionRequest;
 import javax.portlet.ActionResponse;
 import javax.portlet.PortletException;
+import javax.portlet.PortletMode;
 import javax.portlet.RenderRequest;
 import javax.portlet.RenderResponse;
 
+import jp.sf.pal.webproxy.WebProxyConstants;
+
 import org.apache.portals.bridges.portletfilter.PortletFilter;
 import org.apache.portals.bridges.portletfilter.PortletFilterChain;
 import org.apache.portals.bridges.portletfilter.PortletFilterConfig;
@@ -27,16 +30,22 @@
     public void processActionFilter(ActionRequest request,
             ActionResponse response, PortletFilterChain chain)
             throws PortletException, IOException {
-        Map<Object, Object> parameterMap = request.getParameterMap();
-        for (Iterator<Map.Entry<Object, Object>> i = parameterMap.entrySet()
-                .iterator(); i.hasNext();) {
-            Map.Entry<Object, Object> entry = (Map.Entry<Object, Object>) i
-                    .next();
-            String key = entry.getKey().toString();
-            //TODO bug??
-            // String value = entry.getValue().toString();
-            String value = request.getParameter(key);
-            response.setRenderParameter(key, value);
+        // store requrest parameters at VIEW mode
+        if (PortletMode.VIEW.equals(request.getPortletMode())) {
+            Map<Object, Object> parameterMap = request.getParameterMap();
+            for (Iterator<Map.Entry<Object, Object>> i = parameterMap
+                    .entrySet().iterator(); i.hasNext();) {
+                Map.Entry<Object, Object> entry = (Map.Entry<Object, Object>) i
+                        .next();
+                String key = entry.getKey().toString();
+                //TODO bug??
+                // String value = entry.getValue().toString();
+                String value = request.getParameter(key);
+                if (!key.startsWith(WebProxyConstants.PREFIX)) {
+                    key = WebProxyConstants.PARAMETERS + key;
+                }
+                response.setRenderParameter(key, value);
+            }
         }
         chain.processActionFilter(request, response);
     }

Modified: webproxy/trunk/src/main/java/jp/sf/pal/webproxy/service/HtmlContentService.java
===================================================================
--- webproxy/trunk/src/main/java/jp/sf/pal/webproxy/service/HtmlContentService.java	2007-08-11 07:30:28 UTC (rev 452)
+++ webproxy/trunk/src/main/java/jp/sf/pal/webproxy/service/HtmlContentService.java	2007-08-11 07:32:24 UTC (rev 453)
@@ -120,15 +120,16 @@
             Map.Entry<Object, Object> entry = (Map.Entry<Object, Object>) i
                     .next();
             String key = (String) entry.getKey();
-            if (!key.startsWith(WebProxyConstants.PREFIX)) {
+            if (key.startsWith(WebProxyConstants.PARAMETERS)) {
                 String value = (String) entry.getValue();
                 if (alreadyAdded) {
-                    query.append("&amp;");
+                    query.append("&");
                 } else {
                     query.append("?");
                     alreadyAdded = true;
                 }
-                query.append(encode(key, encoding));
+                query.append(encode(key.substring(WebProxyConstants.PARAMETERS
+                        .length()), encoding));
                 query.append("=");
                 query.append(encode(value, encoding));
             }
@@ -154,9 +155,11 @@
             Map.Entry<Object, Object> entry = (Map.Entry<Object, Object>) i
                     .next();
             String key = (String) entry.getKey();
-            if (!key.startsWith(WebProxyConstants.PREFIX)) {
+            if (key.startsWith(WebProxyConstants.PARAMETERS)) {
                 String value = (String) entry.getValue();
-                pairs.add(new NameValuePair(key, value));
+                pairs.add(new NameValuePair(key
+                        .substring(WebProxyConstants.PARAMETERS.length()),
+                        value));
             }
         }
         postMethod.setRequestBody(pairs.toArray(new NameValuePair[0]));

Modified: webproxy/trunk/src/main/webapp/view/edit/editParameters.html
===================================================================
--- webproxy/trunk/src/main/webapp/view/edit/editParameters.html	2007-08-11 07:30:28 UTC (rev 452)
+++ webproxy/trunk/src/main/webapp/view/edit/editParameters.html	2007-08-11 07:32:24 UTC (rev 453)
@@ -14,7 +14,7 @@
   <table>
     <tr>
       <td class="portlet-section-subheader"><label id="urlLabel" for="url">URL</label></td>
-      <td class="portlet-section-body"><input id="url" type="text" /></td>
+      <td class="portlet-section-body"><input id="url" type="text" size="40"/></td>
       <td><span id="urlMessage"></span></td>
     </tr>
   </table>


pal-cvs メーリングリストの案内
Back to archive index