【发布时间】:2013-12-21 00:00:02
【问题描述】:
我在使用@Named 注释时遇到了一些问题。例如下面的 bean 工作正常,它接收并上传文件:
@ManagedBean
@RequestScoped
public class Bean {
private UploadedFile uploadedFile;
public void submit() throws IOException {
String fileName = FilenameUtils.getName(uploadedFile.getName());
String contentType = uploadedFile.getContentType();
byte[] bytes = uploadedFile.getBytes();
// Now you can save bytes in DB (and also content type?)
FacesContext.getCurrentInstance().addMessage(null,
new FacesMessage(String.format("File '%s' of type '%s' successfully uploaded!", fileName, contentType)));
}
public UploadedFile getUploadedFile() {
return uploadedFile;
}
public void setUploadedFile(UploadedFile uploadedFile) {
this.uploadedFile = uploadedFile;
}
}
但是,如果我将 @ManagedBean 和 @RequestedScope 替换为 @Named 和 @RequestScoped,则会出现以下异常:
javax.el.PropertyNotFoundException:目标无法到达,标识符“bean”解析为 null
我知道@Named 我是否在我的 Netbeans 项目中设置了不正确的版本或类似的东西?我也在 Glassfish 4 服务器上进行部署。
谢谢
【问题讨论】:
-
我认为另一个问题应该被标记为“重复”,因为它是在上述之后提出的。
标签: jakarta-ee annotations cdi