如何從Java類獲得Spring MessageContext
?獲取Spring消息上下文
我應該使用一些@Resource
或@Autowire
注入context
VAR上課或者,例如,使用一些全球範圍內SpringContext或其他一些爲了得到MessageContext
。
什麼是方法?
如何從Java類獲得Spring MessageContext
?獲取Spring消息上下文
我應該使用一些@Resource
或@Autowire
注入context
VAR上課或者,例如,使用一些全球範圍內SpringContext或其他一些爲了得到MessageContext
。
什麼是方法?
我通過讀什麼standard method of doing this is開始和嘗試:
@Resource WebServiceContext wsContext;
@WebMethod public String echoHello(String msg) {
MessageContext context = wsContext.getMessageContext();
...
}
這是如何做到這一點在服務器端。在客戶端,請求和響應上下文只是從服務存根中檢索到的簡單地圖(即使沒有明確要求,也會實現BindingProvider
);他們不需要MessageContext
添加的範圍管理。
看起來像,我需要,儘快給你反饋 – sergionni 2011-06-08 09:25:04
我認爲@sergionni意味着另一個[MessageContext](http://static.springsource.org/spring-webflow/docs/2.0.x/javadoc-api /org/springframework/binding/message/MessageContext.html)。 – Roadrunner 2011-06-08 10:52:41
如果我理解正確您正在使用JSF的Spring Webflow並需要從JSF ActionListener內部訪問Webflow MessageContext?
如果是這樣,您可以隨時使用RequestContextHolder(注意使用從一個Webflow的一個,因爲Spring MVC有它自己的!),但它使用ThreadLocal
所以它不是太高雅了:
MessageContext messageContext =
RequestContextHolder.getRequestContext().getMessageContext();
你不能使用標準DI,因爲MessageContext
每個請求由FlowExecutor
在每個流量啓動或恢復時創建,使用MessageSource
。在Service.java
<transition on="search">
<evaluate expression="service.search(service.id, messageContext)" result="scope" />
</transition>`
可以使用MessageContext的現在:
添加MessageContext的這個樣子。
public List search(String serviceId, MessageContext messageContext) {
...
messageContext.addMessage(
...
}
您是否正在使用SWS?如果是這樣,哪個版本?你想在哪裏訪問MessageContext,客戶端/服務器? – abalogh 2011-06-08 08:57:58
我需要從具有從.xhtml(即jsf頁面)調用的ActioListener參數的方法從Java bean中獲取MessageContext。我使用Spring web-flow。 – sergionni 2011-06-08 09:01:22