从网络服务重定向到 jsp 页面
Redirecting to a jsp page from a webservice
我在 Tomcat 服务器中有一个网络服务 运行。它从用户那里获取输入并向其附加 hello。现在,我希望这个 Hello + entered input 显示在 jsp 页面中。是否可以将值从 java 程序直接发送到 jsp 页面。如果可以,请告诉我如何做到这一点?
任何帮助或示例程序将不胜感激。
在此处附上我的 java 代码
import javax.jws.WebService;
import javax.jws.WebMethod;
@WebService
public class Hello {
private String message = new String("Hello, ");
String name1;
public Hello() {
}
@WebMethod
public String sayHello(String name) throws Exception {
this.name1 = name;
System.out.println("The value of name1 is " + name1);
return message + name + ".";
}
}
谢谢,
从第一页获取用户输入:
String userInput = request.getParameter("userInput");
在 java 代码中将数据转发到 asp 文件
String url = "/WEB-INF/JSP/display.jsp"; //Assumes this exists
RequestDispatcher rd = getServletContext().getRequestDispatcher(url);
request.setAttribute("userInput", userInput);
rd.forward(request,response);
在JSP
<%
String userInput = (String) request.getAttribute("userInput");
%>
将其打印在 JSP
<h1><%=userInput%></h1>
编辑:
抱歉,我的第一个回答是关于 Apache Tomcat 而不是 jws。
请参阅本指南的这一部分:Developing a Web client for Calculator
您似乎只是将初始 HTML 页面上的表单操作转发到一个单独的结果页面,该页面将使用您创建的网络服务。
这是不可能的,原因如下:
Web 服务调用是发送到您的 Web 服务的 XML 格式的 SOAP 消息。调用您的 Web 服务的客户端正在这样做,期望将发送回格式相似的 Web 服务响应。您在这里要问的是,您将发送回一个 HTML 文件代替。看到问题了吗?
底线:您不能使用 HTML(或 JSP 生成的 HTML)响应[= 来响应 SOAP 请求10=]
我在 Tomcat 服务器中有一个网络服务 运行。它从用户那里获取输入并向其附加 hello。现在,我希望这个 Hello + entered input 显示在 jsp 页面中。是否可以将值从 java 程序直接发送到 jsp 页面。如果可以,请告诉我如何做到这一点?
任何帮助或示例程序将不胜感激。
在此处附上我的 java 代码
import javax.jws.WebService;
import javax.jws.WebMethod;
@WebService
public class Hello {
private String message = new String("Hello, ");
String name1;
public Hello() {
}
@WebMethod
public String sayHello(String name) throws Exception {
this.name1 = name;
System.out.println("The value of name1 is " + name1);
return message + name + ".";
}
}
谢谢,
从第一页获取用户输入:
String userInput = request.getParameter("userInput");
在 java 代码中将数据转发到 asp 文件
String url = "/WEB-INF/JSP/display.jsp"; //Assumes this exists
RequestDispatcher rd = getServletContext().getRequestDispatcher(url);
request.setAttribute("userInput", userInput);
rd.forward(request,response);
在JSP
<%
String userInput = (String) request.getAttribute("userInput");
%>
将其打印在 JSP
<h1><%=userInput%></h1>
编辑: 抱歉,我的第一个回答是关于 Apache Tomcat 而不是 jws。
请参阅本指南的这一部分:Developing a Web client for Calculator
您似乎只是将初始 HTML 页面上的表单操作转发到一个单独的结果页面,该页面将使用您创建的网络服务。
这是不可能的,原因如下:
Web 服务调用是发送到您的 Web 服务的 XML 格式的 SOAP 消息。调用您的 Web 服务的客户端正在这样做,期望将发送回格式相似的 Web 服务响应。您在这里要问的是,您将发送回一个 HTML 文件代替。看到问题了吗?
底线:您不能使用 HTML(或 JSP 生成的 HTML)响应[= 来响应 SOAP 请求10=]