2013-09-22 102 views
-1

我是JSP新手。我的问题是关于从jsp传递参数到在同一个jsp页面中调用的web服务调用。这里是我的代码在jsp中传递参数

<html> 
</head> 
<body> 
    <h:form id="locate-vehicle"> 
    <table> 
     <tr> 
     <td><h:commandButton value="Localiser" action="clientSpace/initialize.js"/     </td> 
     <td> 
     <select name="chooseVehicle"> 
      <c:forEach var="item" items="${HexaBean.allIdVehiculeByUtilisateur}"> 
      <option><c:out value="${item}"/></option> 
      </c:forEach> 
      <option>Tous les véhicules</option> 
     </select> 
     </td> 
     </tr>   
    </table> 
    </h:form> 

    <% 
    WebServiceClient.GpsWebService_Service service = new WebServiceClient.GpsWebService_Service(); 
WebServiceClient.GpsWebService port = service.getGpsWebServicePort(); 
// TODO initialize WS operation arguments here 
java.lang.String arg0 = request.getParameter("chooseVehicle"); 
// TODO process result here 
double Lat = port.getLastLatitudeByIdVehicule(arg0); 
    double Lng = port.getLastLongitudeByIdVehicule(arg0); 
    %> 

<div id="map-canvas"/> 
</body> 

我想通过“chooseVehicle”作为Web服务调用的参数。我的网络服务提供了经纬度。

<% 
    WebServiceClient.GpsWebService_Service service = new WebServiceClient.GpsWebService_Service(); 
WebServiceClient.GpsWebService port = service.getGpsWebServicePort(); 
// TODO initialize WS operation arguments here 
java.lang.String arg0 = request.getParameter("chooseVehicle"); 
// TODO process result here 
double Lat = port.getLastLatitudeByIdVehicule(arg0); 
    double Lng = port.getLastLongitudeByIdVehicule(arg0); 
    %> 

所以为了获得这个结果我需要指定在我的情况包含在下拉列表中的车辆id。通过在我的Bean中调用方法“allIdVehiculeByUtilisateur”来检索这些项目。 我试过这样做 java.lang.String arg0 = request.getParameter(“chooseVehicle”); 但是,只有当我从其他jsp页面寻找参数时才起作用。 我该如何解决这个问题?感谢您的任何帮助。

回答

0

在JSP中编写代码是非常糟糕的做法。 JSP仅用于演示文稿。尝试将代码移到服务器端并尝试调试。