2011-02-28 82 views
0

如何從一個servlet(將其視爲一個項目)發送/傳遞給另一個servlet(考慮作爲另一個項目)。它顯示數字格式異常。它是正確的傳遞中的sendRedirect方法值或是否有任何其他方式Java Servlet編程

實施例:

文件:uzkpk2.java

  String a1=request.getParameter("a[0]");    
     aa1=Integer.parseInt(a1); 


     String a2=request.getParameter("a[1]");    
     aa2=Integer.parseInt(a2); 


     String a3=request.getParameter("a[2]");    
     aa3=Integer.parseInt(a3); 


     String a4=request.getParameter("a[3]");    
     aa4=Integer.parseInt(a4);  


    response.sendRedirect("http://localhost:8080/CSP/czkpk1?y="+y+"&a1="+aa1+"&a2="+aa2+"&a3="+aa3+"&a4="+aa4); 
    } 
    catch(Exception e) 
    { 
     out.println(e); 
    } 
}  

}


文件:czkpk1.java

aaa1=Integer.parseInt(request.getParameter("aa1")); 
     aaa2=Integer.parseInt(request.getParameter("aa2")); 
     aaa3=Integer.parseInt(request.getParameter("aa3")); 
     aaa4=Integer.parseInt(request.getParameter("aa4")); 
+0

取決於你想用這些servlet做什麼。你的目標是什麼? – 2011-02-28 05:51:14

+0

看起來是http://stackoverflow.com/questions/4321151/how-to-pass-array-from-one-servlet-to-another-servlet的副本。 – Pradeep 2011-02-28 05:53:21

回答

0

- >寫請求上下文的值作爲使用了request.setAttribute()的屬性

- >後請求轉發給使用調用RequestDispatcher.forward()第二個servlet

- >在第二個servlet使用讀出的值request.getAttribute()

+0

感謝解決方案 – Learner 2011-03-01 05:11:50

1

您正在使用錯誤的請求參數來獲取值。

aaa1=Integer.parseInt(request.getParameter("aa1")); 
    aaa2=Integer.parseInt(request.getParameter("aa2")); 
    aaa3=Integer.parseInt(request.getParameter("aa3")); 
    aaa4=Integer.parseInt(request.getParameter("aa4")); 

代替此使用的

aaa1=Integer.parseInt(request.getParameter("a1")); 
    aaa2=Integer.parseInt(request.getParameter("a2")); 
    aaa3=Integer.parseInt(request.getParameter("a3")); 
    aaa4=Integer.parseInt(request.getParameter("a4")); 

因爲czkpk1.java您正在使用的變量名,而不是在本URL中response.sendRedirect是傳遞的參數();

並且在將其解析爲字符串之前僅爲數值提供一個建議。

做到這一點,最好的辦法是

Servlet的鏈接的使用概念。

+0

感謝您的解決方案 – Learner 2011-03-01 05:11:11