VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 527|回复: 2

做参数问题

[复制链接]

2

主题

7

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
发表于 2020-1-16 11:40:01 | 显示全部楼层 |阅读模式
<center>
    <jsp:useBean id="listInformation" scope="page" class="com.yourcompany.struts.operation.ListInformation"></jsp:useBean>
     <TABLE border="1" width=550 cellspacing="0" cellpadding="0"  bordercolor="#CCCCCC" bgcolor="#CCCCCC" style="TABLE-LAYOUT:fixed">
            <TR bgcolor="#9999CC">
              <TD align=center colspan=3 height=40>Please Enter Your Name And Your College</TD>
            </TR>
            <TR bgcolor="#9999CC">
              
              
            <TD align=center>
              <TABLE border="1" width="100%"  height="100%" cellspacing="0" cellpadding="3" frame="void"
                 bordercolor="#CCCCCC" bgcolor="#CCCCCC" style="TABLE-LAYOUT:fixed">
                    <TR> <TD align=center width="30%" height=40>Name</TD></TR>
               <logic:iterate id="element" name="listInformation" property="nameList">
                      <TR bgcolor="#FFFFFF">
                          <TD align=center height="40">
                          <bean:write name="element"/>
                          </TD>
                    </TR>
               </logic:iterate>
                </TABLE>
               </TD>
               <TD align=center colspan=2>
               <TABLE border="1" width="100%"  height="100%" cellspacing="0" cellpadding="3" frame="void"
                    bordercolor="#CCCCCC" bgcolor="#CCCCCC" style="TABLE-LAYOUT:fixed">
                    <TR bgcolor="#FFFFFF">
                               <TD align=center width="70%" height=40 bgcolor="#CCCCCC" >College</TD>
                           <TD align=center height=40 colspan=2 bgcolor="#CCCCCC" >Administrate</TD>
                    </TR>
               <logic:iterate id="element" name="listInformation" property="collegeList">
                      <TR bgcolor="#FFFFFF">
                          <TD align=center height="40" width="70%">
                          <!--bean:write name="element"/-->
                          <bean:write name='element'/>
                          </TD>
                          <TD width="15%">
                         
                          <html:link action="/http2?method=delete&college='<bean:write name="element"/>'">delete</html:link>
                          <TD width="15%"><html:link action="/http2?method=modify">modify</html:link></TD>
                    </TR>
               </logic:iterate>
               </TABLE>
             </TD>
           </TR>
        </TABLE>

问题一:<html:link action="/http2?method=delete&college='<bean:write name="element"/>'">delete</html:link>要用<bean:write name="element"/>作为参数,但按上面这样写时页面提示错误,请问有没有能正确的途径让college的值为bean的属性值,

struts-config.xml配置文件如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
   <data-sources />
   <form-beans >
      <form-bean name="http2Form" type="com.yourcompany.struts.form.Http2Form" />

   </form-beans>

   <global-exceptions />
   <global-forwards >
      <forward name="add" path="/form/add.jsp" />
      <forward name="delete" path="/form/delete.jsp" />
      <forward name="modify" path="/form/modify.jsp" />

   </global-forwards>

   <action-mappings >
      <action
      attribute="http2Form"
         input="/form/http2.jsp"
         name="http2Form"
         path="/http2"
         parameter="method"
         scope="request"
         type="com.yourcompany.struts.action.Http2Action" />

   </action-mappings>

   <message-resources parameter="com.yourcompany.struts.ApplicationResources" />
</struts-config>

问题二:将上面的<html:link  改写为<a href="/http2?method=delete&college=<bean write name="element"/>">delete</a>
提交后不执行DispatchAction的delete方法,而连接到其他页面了,
请问是什么原因啊?

//Created by MyEclipse Struts
// XSL source (default): platform:/plugin/com.genuitec.eclipse.cross.easystruts.eclipse_3.8.3/xslt/JavaClass.xsl

package com.yourcompany.struts.action;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.actions.DispatchAction;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.yourcompany.struts.form.Http2Form;


/**
* MyEclipse Struts
* Creation date: 01-02-2007
*
* XDoclet definition:
* @struts:action path="/http2" name="http2Form" input="/form/http2.jsp" scope="request" validate="true"
*/
public class Http2Action extends DispatchAction {

        // --------------------------------------------------------- Instance Variables

        // --------------------------------------------------------- Methods

        /**
         * Method execute
         * @param mapping
         * @param form
         * @param request
         * @param response
         * @return ActionForward
         */
        public ActionForward add(
                        ActionMapping mapping,
                        ActionForm form,
                        HttpServletRequest request,
                        HttpServletResponse response) {
                        System.out.println("in method add");
                        Http2Form httpForm = (Http2Form) form;
                    String str="";
                    if(httpForm.getCollege()!=null){
                    try{
                            BufferedReader in=new BufferedReader(new FileReader("e:/temp/DataFactory.txt"));
                            int counter=0;
                        String strLine;
                        while((strLine=in.readLine())!=null){
                                str+=strLine+"\r\n";
                                counter++;
                               
                        }
                        if(counter==0)
                                counter=1;
                     String strFirst= counter+" : "+httpForm.getName()+" -- "+httpForm.getCollege()+"\r\n";
                    
                    FileOutputStream out=new FileOutputStream("e:/temp/DataFactory.txt");
                    String newStr=strFirst+str;
                    out.write(newStr.getBytes());
                    out.flush();
                    out.close();
                    }catch(FileNotFoundException e){
                            e.printStackTrace();
                    }catch(IOException e1){
                            e1.printStackTrace();
                    }
                    }
                    //if(httpForm.getName()!=null)
                            //return (mapping.findForward("list"));
                    
                        return (mapping.findForward("add"));
                }
                 public ActionForward delete(
                                ActionMapping mapping,
                                ActionForm form,
                                HttpServletRequest request,
                                HttpServletResponse response) {
                             System.out.println("in the method delete from <html:linkddddd");
                                Http2Form httpForm = (Http2Form) form;
                                 //request.setAttribute("form",httpForm);
                                 
                                 System.out.println(httpForm.getCollege()+"college");
                                return (mapping.findForward("remove"));
                        }

}

回复

使用道具 举报

2

主题

7

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
 楼主| 发表于 2020-2-5 19:45:02 | 显示全部楼层
第一个问题已经解决
:<html:link action="/http2?method=delete&college='<bean:write name="element"/>'">delete</html:link>改写成如下
<html:link action="/http2?method=delete" paramId="element" paramName="element"/>

第二个问题可能与我的系统有关系,希望大家参与讨论!
回复

使用道具 举报

2

主题

7

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
 楼主| 发表于 2020-7-3 16:00:01 | 显示全部楼层
第二个问题应当改为:
<a href="/http2/http2?method=delete&college=<bean write name="element"/>">delete</a>
整个问题都以解决!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表