tem algum campo do seu formulário que está recebendo um valor no permitido.
T
thiago.limma
DirceuSobrinho:
Mostra o formulário JSF.
tem algum campo do seu formulário que está recebendo um valor no permitido.
<?xml version="1.0" encoding="ISO-8859-1"?><f:viewxmlns="http://www.w3.org/1999/xhtml"xmlns:ui="http://java.sun.com/jsf/facelets"xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"xmlns:a4j="http://richfaces.org/a4j"xmlns:rich="http://richfaces.org/rich"xmlns:t="http://myfaces.apache.org/tomahawk"><ui:compositiontemplate="/view/common/layout/layout.xhtml"><html><head><ui:definename="headerOptions"><linkrel="stylesheet"href="${facesContext.externalContext.requestContextPath}/view/common/css/style.css"/><scripttype="text/javascript"src="${facesContext.externalContext.requestContextPath}/view/common/js/Utils.js"></script></ui:define></head><body><ui:definename="utilityPanel"><f:subviewid="subUtility"><h:formid="formPesquisa"><table><tr><td><h:outputTextvalue="Situação: "/></td><td><h:selectOneMenuid="selectStatus"value="#{confirmacaoFeriasBean.confirmacaoFeriasPojo.status}"><f:selectItemsvalue="#{confirmacaoFeriasBean.listFiltros}"/></h:selectOneMenu></td></tr><tr><td><h:outputTextvalue="CPF: "/></td><td><h:inputTextmaxlength="11"size="15"id="cpfPesquisa"value="#{confirmacaoFeriasBean.confirmacaoFeriasPojo.cpf}"onkeyup="mascaraApenasDigitos(this);"><f:converterconverterId="cpfConverter"/></h:inputText></td></tr><tr><td><h:outputTextvalue="Nome: "/></td><td><h:inputTextsize="50"maxlength="150"id="nomePesquisa"value="#{confirmacaoFeriasBean.confirmacaoFeriasPojo.nomeServidor}"/></td></tr><tr><td><h:outputTextvalue="Ano de exercício: "/></td><td><h:inputTextmaxlength="4"size="6"id="anoExercicio"value="#{confirmacaoFeriasBean.confirmacaoFeriasPojo.anoExercicio}"onkeyup="mascaraApenasDigitos(this);"></h:inputText></td></tr><tr><td><h:outputTextvalue="Matrícula SIAPE: "styleClass="label"/></td><td><h:inputTextsize="12"maxlength="8"id="matriculaSIAPE"value="#{confirmacaoFeriasBean.confirmacaoFeriasPojo.matriculaSIAPE}"onkeyup="mascaraApenasDigitos(this);"></h:inputText></td></tr><tr><tdcolspan="2"align="center"><h:commandButtonid="pesquisarSolicitacao"action="#{confirmacaoFeriasBean.findSolicitacao}"value="Buscar"/></td></tr></table></h:form></f:subview></ui:define><ui:definename="content"><h:formid="resultadoPesquisa"><rich:panelid="painelMensagens"rendered="#{! empty facesContext.maximumSeverity}"><br/><h:messagesstyle="color: red"layout="table"/><br/></rich:panel><rich:panelid="painelDataTable"><!--ui:define name="content"--><center><rich:datascrollerfor="solicitacaoDataTable"maxPages="20"/><rich:spacerheight="30"/><rich:dataTableid="solicitacaoDataTable"value="#{confirmacaoFeriasBean.solicitacaoPagedBean.dataModel}"var="solicitacaoFerias"binding="#{confirmacaoFeriasBean.solicitacaoDataTable}"rendered="#{!empty confirmacaoFeriasBean.solicitacaoPagedBean.dataModel}"rows="20"columnClasses="dataTableTD"><h:column><f:facetname="header"><h:outputTextid="dataSolicitacaoLabel"value=" Data de solicitação "styleClass="label"/></f:facet><h:outputTextid="dataSolicitacao"value="#{solicitacaoFerias.dtSolicitacao}"><f:convertDateTimetype ="date"pattern="dd/MM/yyyy"/></h:outputText></h:column><h:column><f:facetname="header"><h:outputTextid="nomeColaboradorLabel"value=" Nome do colaborador "styleClass="label"/></f:facet><h:outputTextid="nomeColaborador"value="#{solicitacaoFerias.idVigenciaFerias.idServidor.nmServidor}"/></h:column><h:column><f:facetname="header"><h:outputTextid="nomeSuperiorLabel"value=" Nome do superior "styleClass="label"/></f:facet><h:outputTextid="nomeSuperior"value="#{solicitacaoFerias.idSuperior.nmServidor}"/></h:column><h:column><f:facetname="header"><h:outputTextid="espacoBranco"value=""/></f:facet><h:commandButtonid="visualizarSolicitacao"action="#{confirmacaoFeriasBean.montarConfirmacaoSolicitacao}"value=" - "immediate="true"/></h:column></rich:dataTable><table><tr><td><inputid="botaoAjuda"type="button"value="Ajuda"onclick="javascript:window.open('${facesContext.externalContext.requestContextPath}/view/ferias/rh/ajudaListarSolicitacao.jsf','SisRH','resizable=yes,scrollbars=yes,status=no,toolbar=no,width=400,height=500');"/></td></tr></table></center></rich:panel></h:form></ui:define></body></html></ui:composition></f:view>
F
felipeguerra
Não sei se é o jeito mais rápido, mas vc pode adicionar uma tag message para cada componente que recebe uma entrada do usuário, tipo:
Aí, o que mostrar o erro, vc já mata!
PS - Para componentes que são populados pelo Backing Bean, isso ocorre também.
T
thiago.limma
felipeguerra:
Não sei se é o jeito mais rápido, mas vc pode adicionar uma tag message para cada componente que recebe uma entrada do usuário, tipo:
Aí, o que mostrar o erro, vc já mata!
PS - Para componentes que são populados pelo Backing Bean, isso ocorre também.
O problema estava no meu método que recupera a lista de situação =]
Já resolvi aqui…
valeu galera!
L
luizhg
Poderia postar a solução encontrada ? Estou com um problema semelhante…
M
mdmfox
Eu sei que faz algum tempo… mas como passei por aqui com o mesmo problema fica uma opção de solução.
No meu caso tive o mesmo retorno de erro e resolvi implementando os métodos ‘hashCode’ e ‘equals’ na classe do Objeto que usava no Converter.
/** * Objeto de conversão de um 'LTEmissorDdd' para o jsf * * @author Marcio.Marins * @since 29/01/2010 */publicclassLTEmissorDddConverterimplementsConverter{/** Log da classe. */privatestaticLoggerlogger;privateLTEmissorDDDemissorDDD;/** * Construtor */publicLTEmissorDddConverter(){logger=Logger.getLogger(LTEmissorDddConverter.class);logger.debug("Inicializando o conversor de LTEmissorDdd.");}@OverridepublicObjectgetAsObject(FacesContextfContext,UIComponentuiComponent,Stringvalue){if(value==null){emissorDDD=null;}if(value.contains("+")){String[]data=value.split("\\+");emissorDDD=newLTEmissorDDD();emissorDDD.setId(Integer.parseInt(data[0]));emissorDDD.setDdd(Integer.parseInt(data[1]));emissorDDD.setLocalidade(data[2]);}returnemissorDDD;}@OverridepublicStringgetAsString(FacesContextfContext,UIComponentuiComponent,Objectvalue){if(value==null){returnnull;}Stringdata=null;if(valueinstanceofLTEmissorDDD){emissorDDD=(LTEmissorDDD)value;data=emissorDDD.getId()+"+";data+=emissorDDD.getDdd()+"+";data+=emissorDDD.getLocalidade();}else{thrownewConverterException("Erro na conversão, era esperado um objeto do tipo 'LTEmissorDdd'.");}returndata;}
Agora os métodos que resolveram meu problema na classe da Entidade LTEmissorDDD:
*é só usar o gerador de código do eclipse, hashcode e equals.
Verifique se seu entity manager está com nome de entityManager, e n outro… pelo que vi aqui se tiver outro nome, você tem que especificar no components.xml. (foi oque entendi).
Mudei o meu de “em” pra “entityManager” e deu certo aqui… =D
(tem que usar o <s:convertEntity/> la na view, e <s:selectItems>, n <f:selectItems>).