Re: Inner Java Enum as value class in EntityModeler [SOLVED]
On Nov 7, 2009, at 10:49 AM, Riccardo De Menna wrote: Hi Johann, Thank you for your advice. As you suggested, solving the issue was just a matter of tweaking the templates. I'm using some custom written ones but for anyone with the same issue it's just a matter of sprinkling a bunch of '.replace('$','.')' after any occurrence of the misspelled class name. That's what we've done. I created a jira and commented on the possible fix. Maybe I should have submitted a patch but Mike that this would probably be best to solve it inside WOLips. http://issues.objectstyle.org/jira/browse/WONDER-263?page=comments#action_13447 ___ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Inner Java Enum as value class in EntityModeler [SOLVED]
Hi Johann, Thank you for your advice. As you suggested, solving the issue was just a matter of tweaking the templates. I'm using some custom written ones but for anyone with the same issue it's just a matter of sprinkling a bunch of '.replace('$','.')' after any occurrence of the misspelled class name. As an example taken from the usual _WonderEntity.java, replacing line public static final ERXKey<$attribute.javaClassName> $ {attribute.uppercaseUnderscoreName} = new ERXKey< $attribute.javaClassName>(${attribute.uppercaseUnderscoreName}_KEY); with line: public static final ERXKey<$attribute.javaClassName.replace('$','.') > ${attribute.uppercaseUnderscoreName} = new ERXKey< $attribute.javaClassName.replace('$','.')>($ {attribute.uppercaseUnderscoreName}_KEY); Fixes the issue... hope this can help others as well, Cheers, rdm On 07/nov/2009, at 02.46, Johann Werner wrote: Hi Riccardo, some time ago I had the very same problem using inner enums in Entity Modeler. I found that the easiest way was to move those enums out of their outer class and make them "normal" enums. The other, more laborious, way would be to tweak the eogenerator templates to do the replacement of '$' by '.' automatically. jw Am 07.11.2009 um 10:03 schrieb Riccardo De Menna: Hi, This issue was already discussed once but I can't really find if it was fixed somehow and I'm missing the obvious. I'm trying more and more to force myself to use Java Enums whenever possible (instead of static fields) and often I find myself in need to serialize them to db for storage. So I write nice to/from PLIST/BLOB factory and conversion methods to dump my Enums into whatever storage I'm using. This unfortunately requires me to fill in Entity Modeler's 'Value Class' field using an inner class (actually it's an inner Enum). I can't use the Class.InnerClass notation. It only works with the Class$InnerClass notation. The problem is that the template then will also pickup the $ thing and wrongly write bugged templates that I have to manually fix. It's only a matter of searching all the '$' and replacing them with a '.', but it can be tedious when you are tweaking the model often. Is there a way to use an inner class without having to manually patch the generated templates? rdm ___ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Inner Java Enum as value class in EntityModeler
Hi Riccardo, some time ago I had the very same problem using inner enums in Entity Modeler. I found that the easiest way was to move those enums out of their outer class and make them "normal" enums. The other, more laborious, way would be to tweak the eogenerator templates to do the replacement of '$' by '.' automatically. jw Am 07.11.2009 um 10:03 schrieb Riccardo De Menna: Hi, This issue was already discussed once but I can't really find if it was fixed somehow and I'm missing the obvious. I'm trying more and more to force myself to use Java Enums whenever possible (instead of static fields) and often I find myself in need to serialize them to db for storage. So I write nice to/from PLIST/BLOB factory and conversion methods to dump my Enums into whatever storage I'm using. This unfortunately requires me to fill in Entity Modeler's 'Value Class' field using an inner class (actually it's an inner Enum). I can't use the Class.InnerClass notation. It only works with the Class$InnerClass notation. The problem is that the template then will also pickup the $ thing and wrongly write bugged templates that I have to manually fix. It's only a matter of searching all the '$' and replacing them with a '.', but it can be tedious when you are tweaking the model often. Is there a way to use an inner class without having to manually patch the generated templates? rdm smime.p7s Description: S/MIME cryptographic signature ___ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Inner Java Enum as value class in EntityModeler
Hi, This issue was already discussed once but I can't really find if it was fixed somehow and I'm missing the obvious. I'm trying more and more to force myself to use Java Enums whenever possible (instead of static fields) and often I find myself in need to serialize them to db for storage. So I write nice to/from PLIST/BLOB factory and conversion methods to dump my Enums into whatever storage I'm using. This unfortunately requires me to fill in Entity Modeler's 'Value Class' field using an inner class (actually it's an inner Enum). I can't use the Class.InnerClass notation. It only works with the Class $InnerClass notation. The problem is that the template then will also pickup the $ thing and wrongly write bugged templates that I have to manually fix. It's only a matter of searching all the '$' and replacing them with a '.', but it can be tedious when you are tweaking the model often. Is there a way to use an inner class without having to manually patch the generated templates? rdm ___ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com