0
私はJSPにAJAX呼び出しを行いました。これは別のJavaクラスでJavaメソッドを呼び出します。すべてのファイルは同じフォルダにあります。JSP値をAJAX呼び出しに戻します。
何らかの理由で、AJAXに正しい値が返されません。これは単純にJSPコンテンツ全体を出力します。
はJavaScript:
var xhr = new XMLHttpRequest();
xhr.onload = function() {
if(true){
alert('hello!');
var response = xhr.responseText;
alert(response);
document.getElementById('newgame').innerHTML = xhr.responseText;
}
};
xhr.open('GET', 'javaconnect.jsp', true);
xhr.send(null);
JSP:
<%@ page import="com.example.Server"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<%
Server tc = new Server();
out.print(tc.highScore());
%>
</body>
</html>
Javaクラス:
package com.example;
public class Server {
public String highScore() {
return "hello!!!";
}
}
私はこれをかなり新しくして以来、私はJSPの代わりにサーブレットを使用することをお勧めしますか? ajax呼び出しのURLは単純にサーブレットファイルの名前ではありませんか?ちょうど私がJSPでやったように。 –
Webプロジェクトは、サーブレット3.0を使用している場合は簡単です: @WebServlet( "/私のサーブレット")// <--------マッピングサーブレット パブリッククラスに、MyServletはHttpServletを{ ... } 拡張しますurlはhttp:// localhost://my-servlet ですが、サーブレット2.5を使用する場合、web.xmlファイルにサーブレットをマッピングする必要があります。 https://docs.oracleの例です。 com/cd/E11035_01/wls100/webapp/configureservlet.html –
emichels