Issue Details (XML | Word | Printable)

Key: CASTOR-2638
Type: Improvement Improvement
Status: Closed Closed
Resolution: Fixed
Priority: Minor Minor
Assignee: Werner Guttmann
Reporter: Werner Guttmann
Votes: 0
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
castor

Create JConstant class (analogue to JField)

Created: 02/Feb/09 03:33 PM   Updated: 10/Mar/09 04:38 PM   Resolved: 04/Feb/09 01:29 PM
Return to search
Component/s: XML schema support
Affects Version/s: None
Fix Version/s: 1.3

Time Tracking:
Original Estimate: 30 minutes
Original Estimate - 30 minutes
Remaining Estimate: 0 minutes
Remaining Estimate - 0 minutes
Time Spent: 1 hour
Time Spent - 1 hour

File Attachments: 1. Text File patch.c2638.20090203-002.txt (12 kB)
2. Text File patch.c2638.20090203-003.txt (17 kB)

Issue Links:
Related
 


 Description  « Hide

Create a JConstant class as a convenience class. Basically, this mimics most of the JField logic, but sets a couple of things by default



Werner Guttmann added a comment - 03/Feb/09 07:13 AM

Initial patch for review.


Werner Guttmann made changes - 03/Feb/09 07:13 AM
Field Original Value New Value
Attachment patch.c2638.20090203-002.txt [ 39750 ]
Ralf Joachim added a comment - 03/Feb/09 08:02 AM

It seams there are some parts missing in the patch.


Werner Guttmann made changes - 03/Feb/09 04:29 PM
Assignee Werner Guttmann [ wguttmn ]
Werner Guttmann added a comment - 03/Feb/09 04:29 PM

Complete patch, including the missing files.


Werner Guttmann made changes - 03/Feb/09 04:29 PM
Attachment patch.c2638.20090203-003.txt [ 39765 ]
Werner Guttmann logged work - 04/Feb/09 01:29 PM
Time Worked: 1 hour
<No comment>
Werner Guttmann made changes - 04/Feb/09 01:29 PM
Resolution Fixed [ 1 ]
Status Open [ 1 ] Resolved [ 5 ]
Werner Guttmann made changes - 04/Feb/09 01:29 PM
Time Spent 1 hour [ 3600 ]
Remaining Estimate 30 minutes [ 1800 ] 0 minutes [ 0 ]
Werner Guttmann made changes - 10/Feb/09 12:16 PM
Status Resolved [ 5 ] Closed [ 6 ]
Thomas Dreyer added a comment - 09/Mar/09 05:14 AM

Hi Werner,

I get an embedded error by generating from XSDs with descriptor.

The problem occur in DescriptorSourceFactory.createDiscriptor(...)
by calling on JClass the addMember(final JMember jMember) method.
Since this issue the method is called with the new JConstant class and
can not handle this.

Regards Thomas Dreyer

...
[INFO] ------------------------------------------------------------------------
[INFO] Building VK Backend: Value Objects
[INFO] task-segment: [install]
[INFO] ------------------------------------------------------------------------
[INFO] [castor:generate {execution: Generating common VOs}]
[INFO] Processing D:\vk\main\backend\vo\xsd\dekanet\PersonAddress.xsd
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Castor execution failed

Embedded error: An Exception occurred processing D:\vk\main\backend\vo\xsd\dekanet\PersonAddress.xsd
Cannot add JMember 'org.exolab.javasource.JConstant' to JClass, unrecognized type.
[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: Castor execution failed
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:584)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:500)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:479)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:292)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:301)
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.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoExecutionException: Castor execution failed
at org.codehaus.mojo.castor.GenerateMojo.execute(GenerateMojo.java:257)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:453)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559)
... 16 more
Caused by: org.apache.maven.plugin.MojoExecutionException: An Exception occurred processing D:\vk\main\backend\vo\xsd\dekanet\PersonAddress.xsd
at org.codehaus.mojo.castor.GenerateMojo.processFile(GenerateMojo.java:452)
at org.codehaus.mojo.castor.GenerateMojo.execute(GenerateMojo.java:239)
... 18 more
Caused by: java.lang.IllegalArgumentException: Cannot add JMember 'org.exolab.javasource.JConstant' to JClass, unrecognized type.
at org.exolab.javasource.JClass.addMember(JClass.java:114)
at org.exolab.castor.builder.descriptors.DescriptorSourceFactory.createDescriptor(DescriptorSourceFactory.java:380)
at org.exolab.castor.builder.descriptors.DescriptorSourceFactory.createSource(DescriptorSourceFactory.java:269)
at org.exolab.castor.builder.SingleClassGenerator.processClassDescriptor(SingleClassGenerator.java:397)
at org.exolab.castor.builder.SingleClassGenerator.process(SingleClassGenerator.java:376)
at org.exolab.castor.builder.SingleClassGenerator.process(SingleClassGenerator.java:314)
at org.exolab.castor.builder.SourceGenerator.createClasses(SourceGenerator.java:944)
at org.exolab.castor.builder.SourceGenerator.generateAllClassFiles(SourceGenerator.java:797)
at org.exolab.castor.builder.SourceGenerator.generateSource(SourceGenerator.java:752)
at org.exolab.castor.builder.SourceGenerator.generateSource(SourceGenerator.java:696)
at org.exolab.castor.builder.SourceGenerator.generateSource(SourceGenerator.java:593)
at org.codehaus.mojo.castor.GenerateMojo.processFile(GenerateMojo.java:438)
... 19 more


Werner Guttmann made changes - 10/Mar/09 04:38 PM
Link This issue is related to CASTOR-2670 [ CASTOR-2670 ]