2013-04-24 46 views
0

我有一個奇怪的問題。@InjectParam在tomcat上工作,但不在glassfish上工作。@InjectParam不按預期工作

這只是在玻璃魚無效。 有什麼原因?

公共類RestControllers {

private static Log log=LogFactory.getLog(RestControllers.class.getName()); 
@InjectParam 
private RulesController controller; 

當我說controller.getSomething()拋出NPE。

controller.getSomething僅在glassfish上拋出空指針異常。像tomcat上的夢一樣工作。

問候,

阿維納什Ç

+0

請提供更多信息,因爲您會收到任何錯誤或內容。還提供一些相關的代碼。 – 2013-04-24 10:26:05

回答

0

修正自己的問題。 GlassFish顯然不支持澤西標註。

只是使用Spring的ApplicationContextAware接口來解決問題。在您的應用程序的context.xml

問候, 阿維納什

0

如果您在使用Spring

1)請提及該註解驅動

<context:component-scan base-package="com.test.reports.controller"/> 
<context:annotation-config/> 
<mvc:annotation-driven/> 

2)使用Spring @Autowired 嘗試在控制器中聲明您的服務如下:

@Autowired ReportService reportService [如應用程序上下文的bean id]