Swing 在支持bean操作方法中调用JOptionPane.showMessageDialog时发生java.awt.HeadlesException
我正在尝试以下方法:Swing 在支持bean操作方法中调用JOptionPane.showMessageDialog时发生java.awt.HeadlesException,swing,jsf,javabeans,Swing,Jsf,Javabeans,我正在尝试以下方法: labelconfig.xhtml: <h:form id="ok"> <h:commandButton value="click"> <f:ajax event="click" listener="#{canvasController.oeps}" /> </h:commandButton> </h:form> 但当我点击按钮时,我得到: serverError:类java.a
labelconfig.xhtml
:
<h:form id="ok">
<h:commandButton value="click">
<f:ajax event="click" listener="#{canvasController.oeps}" />
</h:commandButton>
</h:form>
但当我点击按钮时,我得到:
serverError:类java.awt.HeadlessException
这是如何造成的,我如何解决它?您试图在没有任何桌面GUI的情况下从服务器应用程序调用Swing。使用logger或FacesContext.addMessage而不是JOptionPane来获取反馈。如果出于某种原因,您确实希望通过JSF控制Swing应用程序,请确保设置了显示等,但我建议您重新表述您的问题。我只是想知道bean是否收到了“消息”。应改为使用断点。现在可以了。非常感谢!
@ManagedBean(name = "canvasController")
@SessionScoped
public class CanvasController
public void oeps(AjaxBehaviorEvent event) {
JOptionPane.showMessageDialog(null, "SUCCES3");
}
}