2011-12-21 66 views
2

我尝试以下操作:java.awt.HeadlessException异常在支持bean操作方法调用JOptionPane.showMessageDialog当

labelconfig.xhtml

<h:form id="ok"> 
    <h:commandButton value="click"> 
     <f:ajax event="click" listener="#{canvasController.oeps}" /> 
    </h:commandButton> 
</h:form> 

而且我想在这里得到它:

CanvasController.java

@ManagedBean(name = "canvasController") 
@SessionScoped 
public class CanvasController 

    public void oeps(AjaxBehaviorEvent event) { 
     JOptionPane.showMessageDialog(null, "SUCCES3"); 
    } 

} 

但是当我点击次我得到:

serverError: class java.awt.HeadlessException

这是如何造成的,我该如何解决它?

回答

2

您正试图从服务器应用程序中调用Swing,而无需任何桌面GUI。而不是JOptionPane使用记录器或FacesContext.addMessage来获取反馈。如果由于某种原因,你确实想通过JSF来控制Swing应用程序,确保DISPLAY等已经设置好了,但是我建议重新描述你的问题。

+0

我只是想知道bean是否得到'消息'。应该改用断点。它现在有效。非常感谢! – User404 2011-12-21 12:34:11

相关问题