我的JSP函数附加到我的JSP文件,但它不起作用。我得到了“sendMessage()没有定义”chatPage.jsp中的错误。请检查我的代码,并告诉我我在哪里做错了。JSP文件中的JavaScript函数
在我的loginpage.jsp中,我将获取username和roomName,它将通过UserNameServlet,然后它将getRequestDispatcher转发到chatpage.jsp,转发username和roomName的值。
这是我loginpage.jsp:
TODO supply a titlePlease select a room:
Room 1
Room 2
Please Enter username
这是我UsernameServlet
@WebServlet("/UserNameServlet")
public class UserNameServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
*
* @param request
* @param response
* @throws ServletException
* @throws IOException
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
HttpSession session = request.getSession(true);
String username = request.getParameter("username");
session.setAttribute("username", username);
String roomName = request.getParameter("roomSelect");
if("newRoomOption".equals(roomName)) roomName=request.getParameter("newRoomName");
request.setAttribute("roomName", roomName);
request.setAttribute("username", username);
request.getRequestDispatcher("chatPage.jsp").forward(request,response);
}
这是我chatPage.jsp
TODO supply a titlevar websocket = new WebSocket("ws://"+document.location.host+"+"document.location.pathname+"+""chatroomServerEndpoint/"${roomName});
websocket.onmessage = function processMessage(message){
var jsonData = JSON.parse(message.data);
if(jsonData.message !== null) messagesTextArea.value += jsonData.message + "\n";
};
function sendMessage(){
alert("hello");
}
我有另一个chatRoomServerEndpoint类。
@ServerEndpoint(value="/chatroomServerEndpoint/{chatroom}", configurator=ChatroomServerConfigurator.class)
+0
你缺少的右括号''标签,它应该是:'' –