admin@glassfish.java.net

Re: ActionReport cause not set on bean validation failure?

From: Jerome Dochez <jerome.dochez_at_oracle.com>
Date: Tue, 28 Sep 2010 21:29:53 -0700

do you know when it stopped working ?

On Sep 28, 2010, at 10:49 AM, Joe Di Pol wrote:

>
> When bean validation fails on the Node config bean the resulting
> ActionReport does not have the exception set.
>
> For example create-node-config does this:
>
> public void execute(AdminCommandContext context) {
> ActionReport report = context.getActionReport();
>
> CommandInvocation ci = cr.getCommandInvocation("_create-node", report);
> ParameterMap map = new ParameterMap();
> . . .
> ci.parameters(map);
> ci.execute();
>
> After the ci.execute() if there was a bean validation failure then
> report.getFailureCause() returns null instead of the exception
> and report.getMessage() returns:
>
> "Exception while adding the new configuration org.jvnet.hk2.config.TransactionFailure: Injection failed on public abstract void com.sun.enterprise.config.serverbeans.Node.setName(java.lang.String) throws java.beans.PropertyVetoException"
>
> I'm pretty sure this use to work (the exception was set on the
> ActionReport). FYI here is the trace from the log file of the
> exception I'd expect to see set in the ActionReport.
>
> Anybody know if anything changed?
>
> Thanks,
>
> Joe
>
> [#|2010-09-28T10:27:36.105-0700|SEVERE|glassfish3.1|javax.enterprise.system.tools.admin.org.glassfish.config.support|_ThreadID=16;_ThreadName=Thread-1;|Exception while adding the new configuration org.jvnet.hk2.config.TransactionFailure: Injection failed on public abstract void com.sun.enterprise.config.serverbeans.Node.setName(java.lang.String) throws java.beans.PropertyVetoException
> org.jvnet.hk2.config.TransactionFailure: Injection failed on public abstract void com.sun.enterprise.config.serverbeans.Node.setName(java.lang.String) throws java.beans.PropertyVetoException
> at org.jvnet.hk2.config.ConfigSupport._apply(ConfigSupport.java:203)
> at org.jvnet.hk2.config.ConfigSupport.apply(ConfigSupport.java:133)
> at org.jvnet.hk2.config.ConfigSupport.apply(ConfigSupport.java:112)
> at org.glassfish.config.support.GenericCreateCommand.execute(GenericCreateCommand.java:140)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:365)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:375)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1072)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:101)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1221)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1210)
> at com.sun.enterprise.v3.admin.cluster.CreateNodeConfigCommand.execute(CreateNodeConfigCommand.java:93)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:360)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:375)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1072)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:101)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1221)
> at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1210)
> at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:375)
> at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:209)
> at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:166)
> at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:117)
> at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:234)
> at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:824)
> at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:721)
> at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1014)
> at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:220)
> at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
> at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
> at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
> at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
> at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
> at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
> at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
> at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:530)
> at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:511)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: org.jvnet.hk2.component.ComponentException: Injection failed on public abstract void com.sun.enterprise.config.serverbeans.Node.setName(java.lang.String) throws java.beans.PropertyVetoException
> at org.jvnet.hk2.component.InjectionManager.inject(InjectionManager.java:212)
> at org.jvnet.hk2.component.InjectionManager.inject(InjectionManager.java:102)
> at org.glassfish.config.support.GenericCreateCommand$1.run(GenericCreateCommand.java:145)
> at org.jvnet.hk2.config.ConfigSupport$1.run(ConfigSupport.java:115)
> at org.jvnet.hk2.config.ConfigSupport._apply(ConfigSupport.java:174)
> ... 35 more
> Caused by: java.lang.reflect.InvocationTargetException
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at org.jvnet.hk2.component.InjectionManager.inject(InjectionManager.java:197)
> ... 39 more
> Caused by: java.lang.RuntimeException: org.jvnet.hk2.config.ValidationException: Constraints for this bean violated.
> Message = name must match "[\p{L}\p{N}_][\p{L}\p{N}\-_./;#]*"
> at org.jvnet.hk2.config.WriteableView.setter(WriteableView.java:183)
> at org.jvnet.hk2.config.WriteableView.invoke(WriteableView.java:139)
> at $Proxy79.setName(Unknown Source)
> ... 44 more
> Caused by: org.jvnet.hk2.config.ValidationException: Constraints for this bean violated.
> Message = name must match "[\p{L}\p{N}_][\p{L}\p{N}\-_./;#]*"
> at org.jvnet.hk2.config.WriteableView.handleValidation(WriteableView.java:665)
> at org.jvnet.hk2.config.WriteableView.setter(WriteableView.java:180)
> ... 46 more
> |#]
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: admin-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: admin-help_at_glassfish.dev.java.net
>