【发布时间】:2011-03-21 15:47:49
【问题描述】:
我将如何传递对 servlet 初始化的引用?
所以,假设我的 web.xml 中有这样的内容:
<servlet>
<servlet-name>RestTestServlet V3.1</servlet-name>
<servlet-class>com.xxx.servlet.RestTestServlet</servlet-class>
<init-param>
<param-name>serviceConsumerKey</param-name>
<param-value>com.xxx.oauth.ConsumerKey</param-value>
</init-param>
</servlet>
当我尝试获取参数时,当然我只是获取文字字符串值(“com.xxx...等)。
com.xxx.oauth.ConsumerKey 是我从 JNDI 中提取的字符串 bean,但我不确定如何让 servlet 知道它。我正在使用 Spring。
有没有办法通过 web.xml 做到这一点?如果没有,你会怎么做我想做的事?
【问题讨论】:
-
"...让 servlet 意识到这一点。"什么意思?
-
我希望 servlet 能够具有 com.xxx.oauth.ConsumerKey bean 的值。所以,我把那个 bean 传递给它,然后会有一些方法来获取那个 bean 的字符串值。
-
目前还不清楚你在问什么。什么是“四季豆”? “意识到它”是什么意思?从
ServletConfig获取值有什么问题? -
如何通过 init-param(或其他方法)在 servlet 上设置 bean?所以我有一个名为 com.xxx.oauth.ConsumerKey 的 java.lang.String bean,我希望 servlet 能够访问该 bean。我不能只传递值本身。本质上,我想要像构造函数一样的行为,我传入一个 String 对象并可以在 servlet 上设置它。现在,我正在从 servlet 上下文中获取 WebApplicationContext 并使用 context.getBean() 来获取 bean。
-
为什么投反对票?还有为什么要同时对其他三个不相关的问题投反对票?