Hi Rice, i suppose you're talking about 2.2, since in 2.1 it's working correctly. In fact the addition made to 2.1 were not ported to 2.2, i added configuration for both char datatype and calcualted fields to 2.2 and just committed them.
Simone Rice Yeh wrote: > Hi, > I have a test on cocoon-forms-sample and find this problem. I know > it is because 'char' datatype is NOT enlisted in cocoon-forms.xconf > but I do not know how to add it in cocoon-froms.xconf. Hope someone > can add it. > > Rice > > BoundedThreadPool0-1 ERROR access - Internal Cocoon Problem > org.apache.cocoon.ProcessingException: Error calling function handleForm > at [CascadingException] - > file:/C:/tmp/cocoon/myBlock/target/myBlock/blocks/cocoon-forms-sample/forms/form2_model.xml:141:37 > > at Form - > resource://org/apache/cocoon/forms/flow/javascript/Form.js:46:-1 > at handleForm - > resource://org/apache/cocoon/forms/flow/javascript/Form.js:349:-1 > at <map:call> - > file:/C:/tmp/cocoon/myBlock/target/myBlock/blocks/cocoon-forms-sample/sitemap.xmap:283:40 > > at <map:mount> - > file:/C:/tmp/cocoon/myBlock/target/myBlock/blocks/sitemap.xmap:21:50 > at <map:mount> - > file:/C:/tmp/cocoon/myBlock/target/myBlock/sitemap.xmap:43:49 > at org.apache.cocoon.ProcessingException.throwLocated > (ProcessingException.java:142) > at > org.apache.cocoon.components.flow.javascript.LocationTrackingDebugger.getException(LocationTrackingDebugger.java:110) > at > org.apache.cocoon.components.flow.javascript.fom.FOM_JavaScriptInterpreter.callFunction > (FOM_JavaScriptInterpreter.java:606) > at > org.apache.cocoon.components.treeprocessor.sitemap.CallFunctionNode.invoke(CallFunctionNode.java:113) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes > (AbstractParentProcessingNode.java:54) > at > org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:84) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes > (AbstractParentProcessingNode.java:76) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:150) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes > (AbstractParentProcessingNode.java:76) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:91) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process > (ConcreteTreeProcessor.java:275) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:172) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.process > (TreeProcessor.java:247) > at > org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:113) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java > :54) > at > org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:84) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java > :76) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:150) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java > :76) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:91) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:275) > > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:172) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:247) > at > org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:113) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:54) > at > org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:84) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java > :76) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:150) > at > org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java > :76) > at > org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:91) > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:275) > > at > org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:172) > at > org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:247) > at > org.apache.cocoon.servlet.RequestProcessor.process(RequestProcessor.java:366) > at > org.apache.cocoon.servlet.RequestProcessor.service(RequestProcessor.java:148) > at org.apache.cocoon.servlet.SitemapServlet.service > (SitemapServlet.java:40) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:860) > at > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:423) > at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter > (ServletHandler.java:867) > at > org.apache.cocoon.servlet.multipart.MultipartFilter.doFilter(MultipartFilter.java:102) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:858) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:348) > at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:195) > at org.mortbay.jetty.security.SecurityHandler.handle > (SecurityHandler.java:164) > at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:536) > at org.mortbay.jetty.Server.handle(Server.java:309) > at org.mortbay.jetty.Server.handle(Server.java :285) > at org.mortbay.jetty.HttpConnection.doHandler(HttpConnection.java:364) > at > org.mortbay.jetty.HttpConnection.access$1600(HttpConnection.java:46) > at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete > (HttpConnection.java:612) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:485) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:194) > at org.mortbay.jetty.HttpConnection.handle( HttpConnection.java:298) > at > org.mortbay.jetty.nio.SelectChannelConnector$HttpEndPoint.run(SelectChannelConnector.java:710) > at > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:412) > Caused by: org.apache.avalon.framework.CascadingException: Unknown > datatype 'char' specified at > file:/C:/tmp/cocoon/myBlock/target/myBlock/blocks/cocoon-forms-sample/forms/form2_model.xml:141:37 > at > org.apache.cocoon.forms.datatype.DefaultDatatypeManager.createDatatype > (DefaultDatatypeManager.java:90) > at > org.apache.cocoon.forms.formmodel.AbstractDatatypeWidgetDefinitionBuilder.setupDefinition(AbstractDatatypeWidgetDefinitionBuilder.java:62) > at > org.apache.cocoon.forms.formmodel.AbstractDatatypeWidgetDefinitionBuilder.setupDefinition > (AbstractDatatypeWidgetDefinitionBuilder.java:42) > at > org.apache.cocoon.forms.formmodel.FieldDefinitionBuilder.setupDefinition(FieldDefinitionBuilder.java:37) > at > org.apache.cocoon.forms.formmodel.FieldDefinitionBuilder.buildWidgetDefinition > (FieldDefinitionBuilder.java:31) > at > org.apache.cocoon.forms.formmodel.AbstractWidgetDefinitionBuilder.buildWidgetDefinition(AbstractWidgetDefinitionBuilder.java:65) > at > org.apache.cocoon.forms.formmodel.AbstractWidgetDefinitionBuilder.buildAnotherWidgetDefinition > (AbstractWidgetDefinitionBuilder.java:163) > at > org.apache.cocoon.forms.formmodel.AbstractContainerDefinitionBuilder.setupContainer(AbstractContainerDefinitionBuilder.java:59) > at > org.apache.cocoon.forms.formmodel.RepeaterDefinitionBuilder.buildWidgetDefinition > (RepeaterDefinitionBuilder.java:79) > at > org.apache.cocoon.forms.formmodel.AbstractWidgetDefinitionBuilder.buildWidgetDefinition(AbstractWidgetDefinitionBuilder.java:65) > at > org.apache.cocoon.forms.formmodel.AbstractWidgetDefinitionBuilder.buildAnotherWidgetDefinition > (AbstractWidgetDefinitionBuilder.java:163) > at > org.apache.cocoon.forms.formmodel.AbstractContainerDefinitionBuilder.setupContainer(AbstractContainerDefinitionBuilder.java:59) > at > org.apache.cocoon.forms.formmodel.FormDefinitionBuilder.buildWidgetDefinition > (FormDefinitionBuilder.java:62) > at > org.apache.cocoon.forms.DefaultFormManager.getFormDefinition(DefaultFormManager.java:179) > at > org.apache.cocoon.forms.DefaultFormManager.getFormDefinition(DefaultFormManager.java > :167) > at > org.apache.cocoon.forms.DefaultFormManager.createForm(DefaultFormManager.java:109) > at sun.reflect.GeneratedMethodAccessor122.invoke(Unknown Source) > at sun.reflect.DelegatingMethodAccessorImpl.invoke > (DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:585) > at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:142) > at org.mozilla.javascript.NativeJavaMethod.call > (NativeJavaMethod.java:201) > at > org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3084) > at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2250) > at org.mozilla.javascript.InterpretedFunction.call > (InterpretedFunction.java:149) > at > org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:337) > at > org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:2755) > at org.mozilla.javascript.InterpretedFunction.call > (InterpretedFunction.java:147) > at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:912) > at > org.apache.cocoon.components.flow.javascript.fom.FOM_JavaScriptInterpreter.callFunction(FOM_JavaScriptInterpreter.java:600) > > ... 52 more > Caused by: org.apache.avalon.framework.service.ServiceException: > Non-existing component for this hint (Key='char') > at > org.apache.cocoon.forms.util.SimpleServiceSelector.select(SimpleServiceSelector.java > :97) > at > org.apache.cocoon.forms.datatype.DefaultDatatypeManager.createDatatype(DefaultDatatypeManager.java:88) > ... 80 more > -- Simone Gianni
