我正在尝试编写一个自定义servlet(用于AJAX/JSON),我想在其中引用我@ManagedBeans的名字.我希望能够映射:
http://host/app/myBean/myProperty
至:
@ManagedBean(name="myBean")
public class MyBean {
public String getMyProperty();
}
Run Code Online (Sandbox Code Playgroud)
是否可以从常规servlet中按名称加载bean?是否有我可以使用的JSF servlet或帮助程序?
我似乎被春天宠坏了,这一切都太明显了.
我需要从servlet访问会话范围的bean.我已经试过了
UserBean userBean = (UserBean) request.getSession().getAttribute("userBean");
Run Code Online (Sandbox Code Playgroud)
如在此描述的职位.但是我只得到null作为结果,尽管UserBean的实例是alreay instatiated.这些是我用于userBean的注释/导入:
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
@ManagedBean
@SessionScoped
public class UserBean implements Serializable{
... }
Run Code Online (Sandbox Code Playgroud)
一些背景为什么我无法摆脱servlet:我的jsf页面中有一个文件上传小程序.这个小程序需要一个地址,它可以发送它的POST请求.(我无法编辑此帖子请求以添加更多字段或其他内容).然后我的servlet的post方法存储文件.托管bean无法完成此作业,因为必须使用@MultiPartConfig注释servlet,并且我无法将此批注添加到jsf托管bean.