[jbosstools-issues] [JBoss JIRA] Commented: (JBIDE-5271) Apply Template bindings not saved in Smooks Config XML

Xue Peng (JIRA) jira-events at lists.jboss.org
Tue Dec 1 03:37:29 EST 2009


    [ https://jira.jboss.org/jira/browse/JBIDE-5271?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12497379#action_12497379 ] 

Xue Peng commented on JBIDE-5271:
---------------------------------

When user change the connection/field's name is Apply Template viewer , smooks editor will use the freemarker template engine to generate the CSV contents ,

Sometimes the parameters value were not correct for freemarker template engine when you are doing the graphical mapping , for example , only link the "Value" node of JavaBean figure with the "Field" node of CSV Template figure , the "collection" connection is miss , so the template can't generate correct contents. 

So I suggest when smooks editor get the exception when generate the CSV contents , draw a "X" icon in CSV Template figure and show the error message in tooltip to tell user what's wrong with the mapping. But the premise is that Tom provides the suitable exception and error message.

> Apply Template bindings not saved in Smooks Config XML
> ------------------------------------------------------
>
>                 Key: JBIDE-5271
>                 URL: https://jira.jboss.org/jira/browse/JBIDE-5271
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: smooks
>            Reporter: Brian Fitzpatrick
>            Assignee: Tom Fennelly
>             Fix For: 3.1.0.GA
>
>         Attachments: smooksexample.zip
>
>   Original Estimate: 0 minutes
>  Remaining Estimate: 0 minutes
>
> With the latest fixes delivered to add CSV template mapping, I noticed that the XML for the configuration doesn't get updated when you drag/drop from the Java Classes to the CSV Template model. And because it's not updating the XML, it's not saving the changes and the mappings are not persisted when you reopen the configuration. 
> This appears to be caused by a NPE in the "addMappings" method of the CSVFreeMarkerTemplateBuilder class.
> Tom, any ideas how to fix this?
> 				
> Here's the exception:
> java.lang.NullPointerException
> 	at java.io.StringReader.<init>(StringReader.java:33)
> 	at org.jboss.template.csv.CSVFreeMarkerTemplateBuilder.addMappings(CSVFreeMarkerTemplateBuilder.java:81)
> 	at org.jboss.template.csv.CSVFreeMarkerTemplateBuilder.<init>(CSVFreeMarkerTemplateBuilder.java:74)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksFreemarkerTemplateGraphicalEditor$FreemarkerTemplateConnectionModelFactory.fillMapping(SmooksFreemarkerTemplateGraphicalEditor.java:385)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksFreemarkerTemplateGraphicalEditor$FreemarkerTemplateConnectionModelFactory.createConnection(SmooksFreemarkerTemplateGraphicalEditor.java:260)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksGraphicalEditorPart.createConnection(SmooksGraphicalEditorPart.java:820)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksGraphicalEditorPart.createConnection(SmooksGraphicalEditorPart.java:917)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksGraphicalEditorPart.createConnection(SmooksGraphicalEditorPart.java:923)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksGraphicalEditorPart.createConnection(SmooksGraphicalEditorPart.java:923)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksGraphicalEditorPart.createConnectionModel(SmooksGraphicalEditorPart.java:782)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksGraphicalEditorPart.initGraphicalModel(SmooksGraphicalEditorPart.java:755)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksGraphicalEditorPart.initializeGraphicalViewer(SmooksGraphicalEditorPart.java:1012)
> 	at org.eclipse.gef.ui.parts.GraphicalEditor.createGraphicalViewer(GraphicalEditor.java:153)
> 	at org.eclipse.gef.ui.parts.GraphicalEditor.createPartControl(GraphicalEditor.java:163)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksGraphicalEditorPart.createPartControl(SmooksGraphicalEditorPart.java:210)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksProcessGraphicalEditor.createTaskPage(SmooksProcessGraphicalEditor.java:981)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksProcessGraphicalEditor.showTaskControl(SmooksProcessGraphicalEditor.java:941)
> 	at org.jboss.tools.smooks.graphical.editors.SmooksProcessGraphicalEditor$2.selectionChanged(SmooksProcessGraphicalEditor.java:340)
> 	at org.eclipse.zest.core.viewers.GraphViewer$1.widgetSelected(GraphViewer.java:96)
> 	at org.eclipse.zest.core.widgets.Graph.fireWidgetSelectedEvent(Graph.java:723)
> 	at org.eclipse.zest.core.widgets.Graph.access$4(Graph.java:715)
> 	at org.eclipse.zest.core.widgets.Graph$DragSupport.mousePressed(Graph.java:682)
> 	at org.eclipse.draw2d.Figure.handleMousePressed(Figure.java:873)
> 	at org.eclipse.draw2d.SWTEventDispatcher.dispatchMousePressed(SWTEventDispatcher.java:214)
> 	at org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDown(LightweightSystem.java:513)
> 	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:179)
> 	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
> 	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1176)
> 	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3493)
> 	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3112)
> 	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
> 	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
> 	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
> 	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
> 	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> 	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
> 	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
> 	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
> 	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
> 	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
> 	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
> 	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
> 	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
> 	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:585)
> 	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
> 	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
> 	at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
> 	at org.eclipse.equinox.launcher.Main.main(Main.java:1287)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbosstools-issues mailing list