2012-09-26 42 views
1

我試圖運行一個非常簡單的應用程序到新的WSO2 AppServer(版本5.0.0),但似乎有一些非常奇怪的事情發生。當我試圖訪問一個網頁,做一個簡單的JNDI查找,我得到以下錯誤:WSO2 AppServer v5.0.0無法找到InitialContext類?

HTTP Status 500 - org.apache.jasper.JasperException: Unable to compile class for JSP  Generated servlet error: 
Only a type can be imported. javax.naming.InitialContext resolves to a package 
An error occurred at line: 11 in the jsp file: /jndi.jsp 
Generated servlet error: InitialContext cannot be resolved to a type 
An error occurred at line: 11 in the jsp file: /jndi.jsp Generated servlet error: 
InitialContext cannot be resolved to a type 

該頁面只包含下面的代碼:

<!DOCTYPE html> 
<%@page contentType="text/html" pageEncoding="ISO-8859-1"%> 
<%@page import="javax.naming.InitialContext" %> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
     <title>JNDI Test</title> 
    </head> 
<body> 
    <h1>JNDI Test</h1> 
<% 
    InitialContext ctx = new InitialContext(); 
%>  
<p>Context: <%= ctx.getNameInNamespace() %> 

    </body> 
</html> 

似乎tomcat的編譯器無法以「看」的Java運行時類,但我不明白爲什麼。

任何幫助,將不勝感激。

回答

1

將jndi查找代碼添加到單獨的java類並從jsp頁面調用它。

+1

雖然我可以做到這一點,但我真的不想沒有很好的理由。 AFAIK上面的代碼是JEE兼容的,所以AS應該能夠不變地運行它。 –