我是c9的新手。我创建了一个Openshift JBoss应用服务器&通过GitHub导入C9。 我在Main \ Java \ initial.class中有一个简单的Java类。
<HEAD>
<TITLE>JBossAS7 JSP snoop page</TITLE>
<%@ page import="javax.servlet.http.HttpUtils,java.util.Enumeration" %>
<%@ page import="java.lang.management.*" %>
<%@ page import="java.util.*" %>
<%@ page import="initial" %>
</HEAD>
<BODY>
<H1>WebApp JSP Snoop page</H1>
<img src="images/jbosscorp_logo.png">
<h2>JVM Memory Monitor</h2>
<input type="text" name="text1" size="100" value="<%=prn%>">
我有一个从index.html调用的jsp页面,我只是想在jsp页面中显示变量'prn'。
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 10 in the generated java file
The import initial cannot be resolved
An error occurred at line: 15 in the jsp file: /snoop.jsp
prn cannot be resolved to a variable
12: <img src="images/jbosscorp_logo.png">
13:
14: <h2>JVM Memory Monitor</h2>
15: <input type="text" name="text1" size="100" value="<%=prn%>">
16:
17: <table border="0" width="100%">
18:
但是,我在JSP页面上遇到错误:
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 10 in the generated java file
The import initial cannot be resolved
如何从JSP中与Java类进行交互? 感谢。
编辑由于两个答案: 我认为主要问题是:类'initial'未成功导入。我对Prn的调用是错误的,我现在明白了,但是导入本身并不起作用。 一些人建议将一个类放在一个包中。但Cloud9 IDE没有创建包的选项。
int main(int argc, char** argv)
{
int rank, size;
DIR *d;
FILE *fp;
struct dirent *dir;
if (argc < 2) {
error("Ju lutem jepni emrin e file.");
}
printf("Fillon kerkimi...\n\n");
// Initialize the MPI environment.
MPI_Init(&argc, &argv);
// Get the number of processes
MPI_Comm_size(MPI_COMM_WORLD, &size);
// Get the rank of the process
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
if (rank == 0) {
server();
} else {
char str[100];
sprintf(str, "./%d/%s", rank, argv[1]);
//if file is found
if ((fp = fopen(str, "r")) != NULL) {
char buffer[4096];
int i=0;
char c;
while((c = getc(fp)) != EOF)
{
buffer[i++] = c;
}
buffer[i]='\0';
client(buffer);
}
}
MPI_Finalize();
return 0;
}
答案 0 :(得分:0)
如果您尝试这样做:
Java类:
public class Initial {
public static String getDisp() {
return "JAVARANCH";
}
}
JSP文件:
<HEAD>
<TITLE>JBossAS7 JSP snoop page</TITLE>
<%@ page import="javax.servlet.http.HttpUtils,java.util.Enumeration" %>
<%@ page import="java.lang.management.*" %>
<%@ page import="java.util.*" %>
<%@ page import="Initial" %>
</HEAD>
<BODY>
<H1>WebApp JSP Snoop page</H1>
<img src="images/jbosscorp_logo.png">
<h2>JVM Memory Monitor</h2>
<input type="text" name="text1" size="100" value="<%=Initial.getDisp()%>">
</BODY>
答案 1 :(得分:0)
您可以通过添加以下内容从您的jsp访问您的课程。
<input type="text" name="text1" size="100" value="<%= initial.disp() %>">
或在输入之前添加jsp scriptlet
<%
String prn = initial.disp();
%>
<input type="text" name="text1" size="100" value="<%= prn %>">
注意我使用的方法是 disp()而不是 main()。主要是静止无效,没有回报。