Error while committing the transaction(RESOLVIDO)

Tenho duas entidades CLIENTE e VEICULO.
Consigo fazer o cadastro das duas normalmente, porem estou com dificuldade para fazer a atualizacão devido ao vinculo que uma tem com a outra. (OneToMany)

Para cadastrar um cliente eu adiciono um veiculo assim.

public void cadastrarCarro() {
		this.veiculo.setCliente(cliente);
		this.cliente.getVeiculo().add(this.veiculo);
	}

com as informacoes preenchidas na tela eu salvo.

	public void salvar() {
		cadastrarCarro();
		this.cadastroClienteService.salvar(this.cliente);

		FacesUtil.addInforMessage("Cadastro Salvo com sucesso!");
	}

Porem para fazer a edicão, como um cliente pode ter um ou mais veiculos, decidi editar um cliente de forma separada do veiculo, e veiculo de forma separada do cliente.

Porem estou recebendo o seguinte alerta ao tentar atualizar as informacoes do cliente.

ADVERTÊNCIA: #{cadastroClienteBean.salvar}: javax.persistence.RollbackException: Error while committing the transaction
javax.faces.FacesException: #{cadastroClienteBean.salvar}: javax.persistence.RollbackException: Error while committing the transaction
	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:118)
	at javax.faces.component.UICommand.broadcast(UICommand.java:315)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:658)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:770)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Unknown Source)
Caused by: javax.faces.el.EvaluationException: javax.persistence.RollbackException: Error while committing the transaction
	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:101)
	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
	... 29 more
Caused by: javax.persistence.RollbackException: Error while committing the transaction
	at org.hibernate.ejb.TransactionImpl.commit(TransactionImpl.java:92)
	at util.jpa.TransactionInterceptor.invoke(TransactionInterceptor.java:47)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.jboss.weld.interceptor.proxy.SimpleMethodInvocation.invoke(SimpleMethodInvocation.java:30)
	at org.jboss.weld.interceptor.proxy.SimpleInterceptionChain.invokeNextInterceptor(SimpleInterceptionChain.java:69)
	at org.jboss.weld.interceptor.proxy.InterceptorMethodHandler.executeInterception(InterceptorMethodHandler.java:112)
	at org.jboss.weld.interceptor.proxy.InterceptorMethodHandler.invoke(InterceptorMethodHandler.java:88)
	at org.jboss.weld.bean.proxy.CombinedInterceptorAndDecoratorStackMethodHandler.invoke(CombinedInterceptorAndDecoratorStackMethodHandler.java:55)
	at service.CadastroClienteService$Proxy$_$$_WeldSubclass.salvar(CadastroClienteService$Proxy$_$$_WeldSubclass.java)
	at Controller.CadastroClienteBean.salvar(CadastroClienteBean.java:42)
	at Controller.CadastroClienteBean$Proxy$_$$_WeldClientProxy.salvar(CadastroClienteBean$Proxy$_$$_WeldClientProxy.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.el.parser.AstValue.invoke(AstValue.java:247)
	at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:267)
	at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:39)
	at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)
	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87)
	... 30 more
Caused by: javax.validation.ConstraintViolationException: Validation failed for classes [model.Veiculo] during persist time for groups [javax.validation.groups.Default, ]
List of constraint violations:[
	ConstraintViolationImpl{interpolatedMessage='não pode ser nulo', propertyPath=placa, rootBeanClass=class model.Veiculo, messageTemplate='{javax.validation.constraints.NotNull.message}'}
]
	at org.hibernate.cfg.beanvalidation.BeanValidationEventListener.validate(BeanValidationEventListener.java:159)
	at org.hibernate.cfg.beanvalidation.BeanValidationEventListener.onPreInsert(BeanValidationEventListener.java:94)
	at org.hibernate.action.internal.EntityInsertAction.preInsert(EntityInsertAction.java:181)
	at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:81)
	at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:377)
	at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:369)
	at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:286)
	at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:339)
	at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:52)
	at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1234)
	at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:404)
	at org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.beforeTransactionCommit(JdbcTransaction.java:101)
	at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.commit(AbstractTransactionImpl.java:175)
	at org.hibernate.ejb.TransactionImpl.commit(TransactionImpl.java:75)
	... 53 more

Poderiam me ajudar a contornar a situação ?

att;

Caused by: javax.validation.ConstraintViolationException: Validation failed for classes [model.Veiculo] during persist time for groups [javax.validation.groups.Default, ]
List of constraint violations:[
	ConstraintViolationImpl{interpolatedMessage='não pode ser nulo', propertyPath=placa, rootBeanClass=class model.Veiculo, messageTemplate='{javax.validation.constraints.NotNull.message}'}
]

parece que a placa do carro não pode ser nula…

Sim é porque quando eu estou simplesmente cadastrando eu estou iniciando o meu construtor dando um new veiculo, dai eu jogo as informacoes do veiculo e persisto junto com o cliente.

Porem e no caso de atualizar apenas os dados relacionados ao cliente e NÃO ao veiculo.? Ele esta nulo pq eu nao estou conseguindo identificar alguma forma de dar um new veiculo quando a pagina de edição de cliente está aberta. Dessa forma pelo relacionamento ele pede que eu instancie o veiculo tbm. Eu teria que persistir a atualizacao dos dados feitos no cliente, sem interferir nos dados do veiculo deste mesmo cliente, compreende ?

veja na minha tela de cadastro eu tenho isso. Cadastro o Cliente e 1 veiculo relacionado a ele.

Entao eu instancio assim

public CadastroClienteBean() {
		limpar();
	}

public void limpar() {
		cliente = new Cliente();
		this.veiculo = new Veiculo();
	}

	public void cadastrarCarro() {
		this.veiculo.setCliente(cliente);
		this.cliente.getVeiculo().add(this.veiculo);
	}

	public void salvar() {
		cadastrarCarro();
		this.cadastroClienteService.salvar(this.cliente);

		FacesUtil.addInforMessage("Cadastro Salvo com sucesso!");
	}

Porem para editar, eu tenho apenas isso.

Veja que ele ja carrega a tela de cliente com as informacoes relacionadas e ele, sem o veiculo, exatamente oque preciso, porem se eu atualizo alguma informação dele e tento salvar ele da aquele erro la em cima.
Desculpa, au ainda to iniciando em java web. Tenho pouca experiencia, entao nao sei se fui claro. qualquer coisa so perguntar.