gpt4 book ai didi

java - 从 RESTful Web 服务访问 JSF2 托管 Bean

转载 作者:行者123 更新时间:2023-11-28 22:03:29 25 4
gpt4 key购买 nike

我有一个应用程序范围内的托管 bean,它包含一个从数据库中读取的列表。每当另一个应用程序对数据库进行更改时,它应该触发 Web 服务来更新托管 bean 中的列表。

我试过了

FacesContext context = FacesContext.getCurrentInstance();
ApplicationBean application= (ApplicationBean) context.getApplication().evaluateExpressionGet(context, "#{applicationBean}", ApplicationBean.class);

上下文变量为空,可能是因为未在 JSF 上下文中调用 Web 服务。

REST 资源类看起来像这样:

@Path("/application")
public class ApplicationResource {

@PUT
@Path("{id}")
@Consumes(MediaType.TEXT_PLAIN)
@Produces(MediaType.TEXT_PLAIN)
public void updateIdCache(@PathParam("id") String internalid) {
ApplicationBean application = ???;
application.update(id);
return;
}

}

使用的应用服务器是tomcat 6,请问如何正确完成?

谢谢和最好的问候

最佳答案

不要认为使用 JSF 托管 bean 可以实现您想要的。

虽然 CDI bean 具有此功能。

带有 CDI 的 JAX-WS:

http://weblogs.java.net/blog/jitu/archive/2010/02/19/jax-ws-cdi-java-ee-6-0

CDI实现焊缝常用:焊接入门(涵盖 tomcat 6) http://docs.jboss.org/weld/reference/1.0.0/en-US/html/gettingstarted.html

顺便说一句,我喜欢使用 CDI,而且我只使用 tomcat 6/7

关于java - 从 RESTful Web 服务访问 JSF2 托管 Bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12641614/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com