0

私はこれをjetty Webサーバーで行います。

前提条件は、Web サーバーが起動されていることです。

JSP で書かれた私のメイン ページは、着信接続から IP アドレスを取得しようとしています。

そのため、2 つの JSP ページに分割します (たとえば、a.jsp と b.jsp)。

b.jsp は、クライアントの IP アドレスを取得し、それを a.jsp に渡します。

a.jsp は、b.jsp から取得した IP アドレスを表示するために意図的に設計されています。

着信接続の IP アドレスを格納するために、b.jsp に静的な文字列があります。

2 つの質問:

  1. b.jsp から送信されたデータ (IP アドレス) を取得しない限り、a.jsp が何も表示しないことを願っています。ページを更新するにはどうすればよいですか?

  2. b.jsp から a.jsp に値を渡す方法は?

前もって感謝します

私のb.jspは次のようになります...

<%@ include file="index.jsp" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org  /TR/html4/loose.dtd">
    <%!
    static String clientIpAddress = "";
    %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
    <% 
        clientIpAddress=request.getRemoteAddr();
        if(clientIpAddress!=null){
            //How can I pass clientIpAddress to a.jsp to display?
        }
        else{
            out.println("Nothing happened here");
        }
    %>




</body>
</html>

追加した

<%@ include file="a.jsp" %>

clientIpAddress を a.jsp に渡すためにそれを行う必要があると思うので、コードの先頭に。

  1. b.jsp からデータを受け取ると、a.jsp は自動的に更新されますか?
4

2 に答える 2

4

<jsp:include/>または<jsp:forward/>アクションを使用できます。

<jsp:forward page="a.jsp">
  <jsp:param name="foo" value="10"/>
</jsp:forward>
于 2012-09-03T06:57:19.920 に答える
1

ページ間で IP アドレスを渡す必要はありません。スキップb.jspしてユーザーを直接送信するa.jspことができます。そこでは、次を使用して IP アドレスを取得できます。
request.getRemoteAddr()

ページ間での値の受け渡しに関する質問については、値をセッションに保存するか、リダイレクトの前に GET/POST パラメータを追加することで解決します。

于 2012-09-03T07:06:54.570 に答える