代码之家  ›  专栏  ›  技术社区  ›  Praveen Kumar

如何从自定义mbean在ADF中的错误消息中插入换行符

  •  1
  • Praveen Kumar  · 技术社区  · 9 年前

    下面是我的代码片段:

        String message = "Sample Message :\n Hello World";
    
        FacesMessage facesMsg = new FacesMessage();
        facesMsg.setSeverity(FacesMessage.SEVERITY_ERROR);
        facesMsg.setSummary(message);
        FacesContext.getCurrentInstance().addMessage(
                invokeEvent.getComponent().getClientId(
                        FacesContext.getCurrentInstance()), facesMsg);
    

    期望输出:

    Sample Message :
    Hello World
    

    实际产量:

    Sample Message : Hello World
    

    在我们的mbean中,我们使用了完整的java编码。请注意,通常在Java中, \n 作为换行符正确工作。然而,facescontext没有意识到这一点。

    我在作为OIM(Oracle Identity Manager)一部分的ADF中尝试了这一点。ADFis在这方面的耦合非常紧密,当我们尝试任何定制时都有很多限制。因此,使用CSS或JSF/ADF UI标签可能不可行,如 How do I add HTML code to JSF FacesMessage .

    2 回复  |  直到 7 年前
        1
  •  4
  •   Sid    9 年前

    为消息创建一个完全格式化的HTML,并将其传递给setSummary()方法,如下所示。

    fm.setSummary("<html><body><p>Helloooo !!</p><p>Sid</p></body></html>");
    

    这将起作用。

    -希德

        2
  •  -1
  •   Ashish Awasthi    9 年前

    您可以在FacesMessage中使用HTML来更改文本的行、颜色和样式 检查- http://www.awasthiashish.com/2014/05/adf-basics-how-to-use-facesmessage-to.html

    推荐文章