我的Jsp页面
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@page contentType="application/xml" trimDirectiveWhitespaces="true" %>
<%@ page import="com.raos.kookooivr.CallStatusValues" %>
<c:choose>
<c:when test='${(param.event == "Conference" || param.event == "Hangup" || param.event == "Disconnect") && requestScope.state == "conferenceStarted"}'>
<%
String session_id = request.getParameter("sid");
out.print(CallStatusValues.getsessionid(session_id));
String called_no = request.getParameter("cid");
out.print(CallStatusValues.getcalledno(called_no));
String actualtime = request.getParameter("total_call_duration");
out.print(CallStatusValues.getactualtime(actualtime));
String start_time = request.getParameter("start_time");
out.print(CallStatusValues.getstarttime(start_time));
String end_time = request.getParameter("time");
out.print(CallStatusValues.getendtime(end_time));
%>
</c:when>
</c:choose>
我的Java类
package com.raos.kookooivr;
public class CallStatusValues
{
public static String getsessionid(String session_id)
{
System.out.println(session_id);
return session_id;
}
public static String getcalledno(String called_no)
{
System.out.println(called_no);
return called_no;
}
public static String getactualtime(String actualtime)
{
System.out.println(actualtime);
return actualtime;
}
public static String getstarttime(String start_time)
{
System.out.println(start_time);
return start_time;
}
public static String getendtime(String end_time)
{
System.out.println(end_time);
return end_time;
}
}
我收到 500 错误。
我试图将“String session_id = request.getParameter("sid");
”的值传递给我的java类并尝试打印 session id
public static String getsessionid(String session_id)
{
System.out.println(session_id);
return session_id;
}
我需要帮助才能从 jsp 获取要使用我的 java 类打印的值。例如,我的 sid 是 123456。然后,该 session id 应该从我的 jsp 文件传递到我的 java 类。
恐怕您的代码存在多个问题。
- 您不能使用静态方法 - Web Servlet 是多线程的,并且每个线程都需要模型类实例(通常映射到每个 Web session 的一个实例)。
- 您的命名约定不标准。 session_id 变量的正确名称是 sessionId,getter 应该是 getSessionId() - 请注意大小写。这符合 Java Bean 命名约定。
- 将代码耦合到模型类(顺便说一句,模型类没有地方存储数据)的方式是非标准的。
- 在 JSP 中编写 Java 代码通常被视为新项目的代码味道。更常见的做法是在 JSP 中使用 EL 和标记,并将任何 Java 代码移至模型和 Controller 中。
我建议您下载一个简单的工作 J2EE JSP servlet 项目并分析它是如何工作的。然后开始修改它以满足您的要求。类似于 http://crunchify.com/servlet-tutorial-getting-starting-with-jsp-servlet-example应该可以帮助您入门。
我是一名优秀的程序员,十分优秀!