2016-05-31 57 views
0

我是c9的新手。我创建了一个通过GitHub导入到C9的Openshift JBoss应用程序服务器&。 我在Main \ Java \ initial.class中有一个简单的Java类。如何从JSP页面调用Java类? Cloud9和OpenShift JBoss

public class initial { 


    public static void main(String[] args) { 

     String prn = disp(); 
     System.out.println(prn); 
    } 

    public static String disp() 
     { 
     String str=" JAVARANCH "; 
     return str; 
    } 
} 

我有一个从index.html调用的jsp页面,我只是试图在jsp页面中显示变量'prn'。

<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%>"> 

但是,我得到下面的错误在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 

    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中的Java类互动? 谢谢。

编辑由于两个答案: 我认为主要问题是:类'初始'没有被成功导入。我给Prn的电话是错误的,现在我明白了,但导入本身并不奏效。有些人建议把这个类放在一个包里面。但Cloud9 IDE没有创建包的选项。

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 
+0

我不是一个大的Java专家,但我认为'prn'只存在于main范围内,所以如果您在JSP中调用main可能会显示您要查找的字符串。 'disp'也可以这样做,因为它也是静态的。 –

回答

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> 
0

您可以通过将下面从JSP访问类。

<input type="text" name="text1" size="100" value="<%= initial.disp() %>"> 

或通过您的输入之前将一个jsp的scriptlet我使用您的方法DISP()主()

<%  
String prn = initial.disp(); 
%> 

<input type="text" name="text1" size="100" value="<%= prn %>"> 

的通知。主要是静止的无效,没有回报。