不要手动传播对话+ CDI + JS2 + WELD

时间:2013-08-29 17:29:45

标签: jsf-2 cdi

我有一个带有在ConversationScoped中运行的支持bean的表单的xhtml。

我想创建一个提交并不传播会话(CID)的FORM。

在生成的html上,CID出现在表单标记的操作中:

<form id="forme" name="form_nova_senha" method="post" action="/plma/index.xhtml?cid=1" enctype="application/x-www-form-urlencoded">

1 个答案:

答案 0 :(得分:1)

我找到了WeldPhaseListener的阅读来源

   public static String getConversationId(FacesContext facesContext, ConversationContext conversationContext) {
        Map<String, String> map = facesContext.getExternalContext().getRequestParameterMap();
        if (map.containsKey(NO_CID))
            return null; // ignore cid; WELD-919

        String cidName = conversationContext.getParameterName();
        String cid = map.get(cidName);
        log.trace(FOUND_CONVERSATION_FROM_REQUEST, cid);
        return cid;
    }

只需要根据请求添加nocid参数。