Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Language IDEs » ServerTools (WTP) » Dali EJB3-JPA tooling priorities – feedback requested
Dali EJB3-JPA tooling priorities – feedback requested [message #166504] Wed, 12 April 2006 12:28 Go to next message
Neil Hauge is currently offline Neil HaugeFriend
Messages: 475
Registered: July 2009
Senior Member
In an effort to plan our final work items for the 0.5 preview release of the Dali project, we wanted to re-engage the community to help us determine what features should have priority. Following are the remaining features that we are considering for the 0.5 preview release. New feature suggestions are also welcome.

-Inheritance
-Generator Library (Management of sequence generator configurations)
-Cascade support for an Array of Cascade Types
-Support for IdClass, EmbeddedID
-Support multiple JoinColumns for association mappings
-Callback annotation support
-Support for additional EJB3 mapping annotations
-SecondaryTables
-Lob
-Temporal
-Enumerated
-MapKey
-Schema/Catalog annotation support
-Integration with Java refactoring
-Quick fixes

Also, please vote for Dali ER’s that you would like to see implemented. They can be found in bugzilla under Technology->Dali

Thanks for your help,

Neil Hauge
Dali Lead
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166552 is a reply to message #166504] Wed, 12 April 2006 13:52 Go to previous messageGo to next message
Kevin Sutter is currently offline Kevin SutterFriend
Messages: 106
Registered: July 2009
Senior Member
Wow! What an open-ended request! :-) Here it goes...

First off, I don't seem to have the authority to actually "vote" on the
ER's in the Bugzilla database. So, I will just point out three bug
reports that I feel should be fixed before shipping 0.5:

134811 - 'Sequence Generator "null" cannot be resolved' error

134825 - No ddl generation wizard appears. (FYI, it seems that some
people actually have this working since there other bug reports about the
ddl generation that get past this point. But, I am not the only one on my
team that is experiencing this problem.)

136321 - Missing attributes on Persistence Properties panel

As far as missing function that I would like to see in the 0.5 release:

@ManyToMany relationships on both sides of the relationship
@JoinTable support
@Embedded and associated @AttributeOverrides
@DiscriminatorValue and @DiscriminatorColumn support
@PrimaryKeyJoinColumn support
Entity Listener and Callback annotation support

FYI, my first set of tests are being based off the samples in the JPA spec
(sections 9.2.1 and 9.2.2). I'm sure other people have other priorities,
but I would think it would be nice to be able to support the samples in
the spec first. That's my priority at this point.

Thank you for asking and keep up the good work!
Kevin



Neil Hauge wrote:

> In an effort to plan our final work items for the 0.5 preview release of the
Dali project, we wanted to re-engage the community to help us determine what
features should have priority. Following are the remaining features that we
are considering for the 0.5 preview release. New feature suggestions are also
welcome.

> -Inheritance
> -Generator Library (Management of sequence generator configurations)
> -Cascade support for an Array of Cascade Types
> -Support for IdClass, EmbeddedID
> -Support multiple JoinColumns for association mappings
> -Callback annotation support
> -Support for additional EJB3 mapping annotations
> -SecondaryTables
> -Lob
> -Temporal
> -Enumerated
> -MapKey
> -Schema/Catalog annotation support
> -Integration with Java refactoring
> -Quick fixes

> Also, please vote for Dali ER’s that you would like to see implemented. They
can be found in bugzilla under Technology->Dali

> Thanks for your help,

> Neil Hauge
> Dali Lead
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166567 is a reply to message #166552] Wed, 12 April 2006 14:27 Go to previous messageGo to next message
Karen Butzke is currently offline Karen ButzkeFriend
Messages: 220
Registered: July 2009
Senior Member
Hi Kevin,
Thanks for the feedback!
First off, I am wondering if you have installed the latest Dali build and
if it installed correctly. We already have some JoinTable support(only
multiple joinColumns are missing) and we also already support Embedded and
AttributeOverrides. Are you sure your latest Dali plugins didn't wind up
in an eclipse subfolder, it's easy to do this especially since our
original builds didn't have the eclipse subfolder? Let me know if you see
the new functionality, and maybe it will fix you ddl generation wizard
problem as well.


> @ManyToMany relationships on both sides of the relationship
I'm not sure what you mean by this one, but maybe it's another feature
that you aren't seeing.

> FYI, my first set of tests are being based off the samples in the JPA spec
> (sections 9.2.1 and 9.2.2). I'm sure other people have other priorities,
> but I would think it would be nice to be able to support the samples in
> the spec first. That's my priority at this point.

I would agree with this, we have thought about trying to support the spec
examples as a first pass.

thanks,
Karen


> Wow! What an open-ended request! :-) Here it goes...

> First off, I don't seem to have the authority to actually "vote" on the
> ER's in the Bugzilla database. So, I will just point out three bug
> reports that I feel should be fixed before shipping 0.5:

> 134811 - 'Sequence Generator "null" cannot be resolved' error

> 134825 - No ddl generation wizard appears. (FYI, it seems that some
> people actually have this working since there other bug reports about the
> ddl generation that get past this point. But, I am not the only one on my
> team that is experiencing this problem.)

> 136321 - Missing attributes on Persistence Properties panel

> As far as missing function that I would like to see in the 0.5 release:

> @ManyToMany relationships on both sides of the relationship
> @JoinTable support
> @Embedded and associated @AttributeOverrides
> @DiscriminatorValue and @DiscriminatorColumn support
> @PrimaryKeyJoinColumn support
> Entity Listener and Callback annotation support

> FYI, my first set of tests are being based off the samples in the JPA spec
> (sections 9.2.1 and 9.2.2). I'm sure other people have other priorities,
> but I would think it would be nice to be able to support the samples in
> the spec first. That's my priority at this point.

> Thank you for asking and keep up the good work!
> Kevin
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166582 is a reply to message #166567] Wed, 12 April 2006 16:02 Go to previous messageGo to next message
Kevin Sutter is currently offline Kevin SutterFriend
Messages: 106
Registered: July 2009
Senior Member
Thanks, Karen. I'm now hitting one new problem... The other comments I
will respond to on another thread to avoid confusion.

> First off, I am wondering if you have installed the latest Dali build and
> if it installed correctly. We already have some JoinTable support(only
> multiple joinColumns are missing) and we also already support Embedded and
> AttributeOverrides. Are you sure your latest Dali plugins didn't wind up
> in an eclipse subfolder, it's easy to do this especially since our
> original builds didn't have the eclipse subfolder? Let me know if you see
> the new functionality, and maybe it will fix you ddl generation wizard
> problem as well.

I did have the right eclispe subfolder structure (I had noticed the
difference when I got the latest M1 driver). But, *something* was out of
whack with what I had on my system. I downloaded the driver again,
deleted the old *dali* files and folders under both features and plugins,
and "re-installed" Dali. Things are working better (and worse)... :-)

First off, the DDL generation wizard now appears! I will have to
experiment with this now and see if it's doing what I am expecting. Thank
you!

After I re-connect to my database and re-establish my "persistence
connection", I am getting the following error in the Error.log. This may
be due to the ManyToOne relationship support not quite there yet??? Not
sure.

java.lang.ClassCastException:
org.eclipse.dali.core.adapters.java.JavaManyToOneMappingMode lAdapter
incompatible with
org.eclipse.dali.core.adapters.ISingleRelationshipMappingMod elAdapter
at
org.eclipse.dali.core.impl.SingleRelationshipMappingImpl.set Optional(SingleRelationshipMappingImpl.java:165)
at
org.eclipse.dali.core.adapters.java.JavaSingleRelationshipMa ppingModelAdapter$2.setPersValue(JavaSingleRelationshipMappi ngModelAdapter.java:56)
at
org.eclipse.dali.core.adapters.java.AbstractAnnotationElemen tAdapter.updatePersElement(AbstractAnnotationElementAdapter. java:76)
at
org.eclipse.dali.core.adapters.java.JavaSingleRelationshipMa ppingModelAdapter.updateOptional(JavaSingleRelationshipMappi ngModelAdapter.java:114)
at
org.eclipse.dali.core.adapters.java.JavaSingleRelationshipMa ppingModelAdapter.updatePersModel(JavaSingleRelationshipMapp ingModelAdapter.java:106)
at
org.eclipse.dali.core.adapters.java.JavaAttributeMappingMode lAdapter.engage(JavaAttributeMappingModelAdapter.java:58)
at
org.eclipse.dali.core.adapters.java.JavaPersistentAttributeM odelAdapter.updatePersAttributeMapping(JavaPersistentAttribu teModelAdapter.java:83)
at
org.eclipse.dali.core.adapters.java.JavaPersistentAttributeM odelAdapter.updatePersModel(JavaPersistentAttributeModelAdap ter.java:54)
at
org.eclipse.dali.core.adapters.java.JavaPersistentAttributeM odelAdapter.engage(JavaPersistentAttributeModelAdapter.java: 43)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.addPersistentAttributeModelAdapter(JavaPersistentType ModelAdapter.java:262)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.updatePersMappings(JavaPersistentTypeModelAdapter.jav a:252)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.updatePersModel(JavaPersistentTypeModelAdapter.java:1 46)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.engage(JavaPersistentTypeModelAdapter.java:72)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.addPersistentType(JavaPersistenceFileModelAdapter.ja va:155)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.updatePrimaryType(JavaPersistenceFileModelAdapter.ja va:142)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.updateModel(JavaPersistenceFileModelAdapter.java:80)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.engage(JavaPersistenceFileModelAdapter.java:56)
at
org.eclipse.dali.core.impl.PersistenceFileImpl.engageModel(P ersistenceFileImpl.java:170)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl.getPersi stenceFile(PersistenceContainerImpl.java:320)
at
org.eclipse.dali.core.impl.PersistenceModelManager.getPersis tenceFile(PersistenceModelManager.java:120)
at org.eclipse.dali.core.DaliPlugin.getPersistenceFile(DaliPlug in.java:87)
at
org.eclipse.dali.core.impl.PersistenceFileImpl.resolvePersis tentType(PersistenceFileImpl.java:230)
at
org.eclipse.dali.core.impl.RelationshipMappingImpl.getResolv edTargetEntity(RelationshipMappingImpl.java:280)
at
org.eclipse.dali.core.adapters.java.JavaJoinTableModelAdapte r.defaultName(JavaJoinTableModelAdapter.java:108)
at
org.eclipse.dali.core.adapters.java.JavaTableModelAdapter.up datePersDefaultName(JavaTableModelAdapter.java:79)
at
org.eclipse.dali.core.adapters.java.JavaTableModelAdapter.up datePersModel(JavaTableModelAdapter.java:74)
at
org.eclipse.dali.core.adapters.java.JavaJoinTableModelAdapte r.updatePersModel(JavaJoinTableModelAdapter.java:62)
at
org.eclipse.dali.core.adapters.java.JavaMultiRelationshipMap pingModelAdapter.updatePersModel(JavaMultiRelationshipMappin gModelAdapter.java:91)
at
org.eclipse.dali.core.adapters.java.JavaAttributeMappingMode lAdapter.engage(JavaAttributeMappingModelAdapter.java:58)
at
org.eclipse.dali.core.adapters.java.JavaPersistentAttributeM odelAdapter.updatePersAttributeMapping(JavaPersistentAttribu teModelAdapter.java:83)
at
org.eclipse.dali.core.adapters.java.JavaPersistentAttributeM odelAdapter.updatePersModel(JavaPersistentAttributeModelAdap ter.java:54)
at
org.eclipse.dali.core.adapters.java.JavaPersistentAttributeM odelAdapter.engage(JavaPersistentAttributeModelAdapter.java: 43)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.addPersistentAttributeModelAdapter(JavaPersistentType ModelAdapter.java:262)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.updatePersMappings(JavaPersistentTypeModelAdapter.jav a:252)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.updatePersModel(JavaPersistentTypeModelAdapter.java:1 46)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.engage(JavaPersistentTypeModelAdapter.java:72)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.addPersistentType(JavaPersistenceFileModelAdapter.ja va:155)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.updatePrimaryType(JavaPersistenceFileModelAdapter.ja va:142)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.updateModel(JavaPersistenceFileModelAdapter.java:80)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.engage(JavaPersistenceFileModelAdapter.java:56)
at
org.eclipse.dali.core.impl.PersistenceFileImpl.engageModel(P ersistenceFileImpl.java:170)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl.getPersi stenceFile(PersistenceContainerImpl.java:320)
at
org.eclipse.dali.core.impl.PersistenceModelManager.getPersis tenceFile(PersistenceModelManager.java:120)
at org.eclipse.dali.core.DaliPlugin.getPersistenceFile(DaliPlug in.java:87)
at
org.eclipse.dali.core.impl.PersistenceFileImpl.resolvePersis tentType(PersistenceFileImpl.java:230)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.getParentPersistentType(JavaPersistentTypeModelAdapte r.java:644)
at
org.eclipse.dali.core.impl.PersistentTypeImpl.getParentPersi stentType(PersistentTypeImpl.java:520)
at
org.eclipse.dali.core.impl.EntityImpl.getParentPersistentTyp e(EntityImpl.java:611)
at
org.eclipse.dali.core.impl.EntityImpl.inheritedAttributeName s(EntityImpl.java:592)
at
org.eclipse.dali.core.adapters.java.JavaEntityModelAdapter.u pdatePersAttributeOverrides(JavaEntityModelAdapter.java:215)
at
org.eclipse.dali.core.adapters.java.JavaEntityModelAdapter.u pdatePersModel(JavaEntityModelAdapter.java:141)
at
org.eclipse.dali.core.adapters.java.JavaEntityModelAdapter.e ngage(JavaEntityModelAdapter.java:75)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.engageTypeMappingModelAdapter(JavaPersistentTypeModel Adapter.java:92)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.setTypeMappingKey(JavaPersistentTypeModelAdapter.java :136)
at
org.eclipse.dali.core.impl.PersistentTypeImpl.setTypeMapping Key(PersistentTypeImpl.java:310)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.updatePersTypeMapping(JavaPersistentTypeModelAdapter. java:165)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.updatePersModel(JavaPersistentTypeModelAdapter.java:1 43)
at
org.eclipse.dali.core.adapters.java.JavaPersistentTypeModelA dapter.engage(JavaPersistentTypeModelAdapter.java:72)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.addPersistentType(JavaPersistenceFileModelAdapter.ja va:155)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.updatePrimaryType(JavaPersistenceFileModelAdapter.ja va:142)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.updateModel(JavaPersistenceFileModelAdapter.java:80)
at
org.eclipse.dali.core.adapters.java.JavaPersistenceFileModel Adapter.engage(JavaPersistenceFileModelAdapter.java:56)
at
org.eclipse.dali.core.impl.PersistenceFileImpl.engageModel(P ersistenceFileImpl.java:170)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl.getPersi stenceFile(PersistenceContainerImpl.java:320)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl$1.visit( PersistenceContainerImpl.java:174)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:112)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:126)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl.buildInt ernalResources(PersistenceContainerImpl.java:189)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl$1.visit( PersistenceContainerImpl.java:180)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:112)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:126)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl.buildInt ernalResources(PersistenceContainerImpl.java:189)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl$1.visit( PersistenceContainerImpl.java:180)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:112)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:126)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl.buildInt ernalResources(PersistenceContainerImpl.java:189)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl$1.visit( PersistenceContainerImpl.java:180)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:112)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:126)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl.buildInt ernalResources(PersistenceContainerImpl.java:189)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl$1.visit( PersistenceContainerImpl.java:180)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:112)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:126)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl.buildInt ernalResources(PersistenceContainerImpl.java:189)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl$1.visit( PersistenceContainerImpl.java:180)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:112)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:126)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl.buildInt ernalResources(PersistenceContainerImpl.java:189)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl$1.visit( PersistenceContainerImpl.java:180)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:112)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:126)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl.buildInt ernalResources(PersistenceContainerImpl.java:189)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl$1.visit( PersistenceContainerImpl.java:180)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:112)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:126)
at
org.eclipse.dali.core.impl.PersistenceContainerImpl.buildInt ernalResources(PersistenceContainerImpl.java:189)
at
org.eclipse.dali.core.impl.PersistenceProjectImpl$1.run(Pers istenceProjectImpl.java:260)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:76)
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166590 is a reply to message #166567] Wed, 12 April 2006 16:15 Go to previous messageGo to next message
Kevin Sutter is currently offline Kevin SutterFriend
Messages: 106
Registered: July 2009
Senior Member
>> @ManyToMany relationships on both sides of the relationship
> I'm not sure what you mean by this one, but maybe it's another feature
> that you aren't seeing.

I have the following code in my Employee class. I can not get the
Persistence Properties to ever display anything related to the "projects"
property. Not the relationship, or the table, or the even the property
itself.

@ManyToMany(cascade=CascadeType.PERSIST)
@JoinTable(name="EMP_PROJ",
joinColumns=@JoinColumn(
name="EMP_ID", referencedColumnName="ID"),
inverseJoinColumns=@JoinColumn(
name="PROJ_ID", referencedColumnName="ID"))
public Collection<Project> getProjects() {
return projects;
}
public void setProjects(Collection<Project> projects) {
this.projects = projects;
}

Since you indicated that multiple JoinColumns is not supported yet, maybe
that's the basis of the problem I am seeing? If so, I want JoinColumns to
raise on your priority list. :-)

What I meant by "both sides of the relationship" is that the Project class
(which contains the "employees" property) does not seem to recognize the
ManytoMany mappedBy attribute. But, at least with the "updated" Dali
build (per my previous append), the Persistence Properties now displays
correctly for the Project's employees property. So, we're making
progress...

Thanks again!
Kevin
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166614 is a reply to message #166552] Wed, 12 April 2006 17:11 Go to previous messageGo to next message
Kevin Sutter is currently offline Kevin SutterFriend
Messages: 106
Registered: July 2009
Senior Member
Karen's suggestion of re-loading the Dali plugin helped in several areas.
Where I am still having problems, I re-posted to the forum. The following
areas have been resolved.

> First off, I don't seem to have the authority to actually "vote" on the
> ER's in the Bugzilla database.

Neil resolved this. I can now vote on the bugs that I want to get in.

> 134825 - No ddl generation wizard appears. (FYI, it seems that some
> people actually have this working since there other bug reports about the
> ddl generation that get past this point. But, I am not the only one on my
> team that is experiencing this problem.)

I now get the ddl generation wizard to appear. I cancelled this bug
report.

> @ManyToMany relationships on both sides of the relationship
> @JoinTable support

I replied to Karen on a separate thread concerning the problem I am having
with ManyToMany. Might be resolved...

> @Embedded and associated @AttributeOverrides

Looks to be resolved by re-loading the Dali build.

> @DiscriminatorValue and @DiscriminatorColumn support
> @PrimaryKeyJoinColumn support

Secondary table support (which is on your list).

> Entity Listener and Callback annotation support

Still would like this.

Hope this helps clarify my requests. Thanks again!
Kevin
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166622 is a reply to message #166590] Wed, 12 April 2006 17:16 Go to previous messageGo to next message
Kevin Sutter is currently offline Kevin SutterFriend
Messages: 106
Registered: July 2009
Senior Member
Karen,

>> @ManyToMany relationships on both sides of the relationship
>> I'm not sure what you mean by this one, but maybe it's another feature
>> that you aren't seeing.

After re-loading my Eclipse project, the ManyToMany relationships now seem
to be displayed correctly in the Persistence Properties panels. So,
*something* is still a little flakey with how these annotations are
detected and displayed. But, in general, the support is working as
expected.

Sorry for the confusion. If I can consistently reproduce the steps when
the annotations are not detected properly, I'll re-post or write a bug
report.

Thanks again,
Kevin
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166643 is a reply to message #166582] Wed, 12 April 2006 20:09 Go to previous messageGo to next message
Karen Butzke is currently offline Karen ButzkeFriend
Messages: 220
Registered: July 2009
Senior Member
Kevin wrote:

> After I re-connect to my database and re-establish my "persistence
> connection", I am getting the following error in the Error.log. This may
> be due to the ManyToOne relationship support not quite there yet??? Not
> sure.

> java.lang.ClassCastException:
> org.eclipse.dali.core.adapters.java.JavaManyToOneMappingMode lAdapter
> incompatible with
> org.eclipse.dali.core.adapters.ISingleRelationshipMappingMod elAdapter
> at
>
org.eclipse.dali.core.impl.SingleRelationshipMappingImpl.set Optional(SingleRelationshipMappingImpl.java:165)
> at


I made some changes recently that should fix this problem for M2. There
was also a bug that looks related that is now fixed bug 136149.
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166675 is a reply to message #166622] Wed, 12 April 2006 21:43 Go to previous messageGo to next message
Kevin Sutter is currently offline Kevin SutterFriend
Messages: 106
Registered: July 2009
Senior Member
Karen,

> Sorry for the confusion. If I can consistently reproduce the steps when
> the annotations are not detected properly, I'll re-post or write a bug
> report.

Here's the scoop. I close all of my open files (just to make a clean
re-start). I stop Eclipse and re-start it. I reconnect to my database
(Derby). I Add Java Persistence to my project. I open my Employee class
(from section 9.2.2 of the JPA spec).

In the Persistence Outline, I notice that only 4 of my 8 attributes are
shown (id, version, name, and address). Navigating to the various
properties within the source window, the Persistence Properties panel only
gets updated when I touch one of these 4 "known" properties. If I touch
any of the other properties, the Persistence Panel either stays where it
is or it defaults back to the Entity panel -- in either case, it's not
what I wanted. This was the situation I was seeing this morning and
caused me to say that this didn't work.

Now, here's the weird part. If I go to one of the "unknown" properties,
such as phoneNumbers (either the specific attribute declaration or the
property methods) and benignly modify some character (ie, backspace over
the "s" and then retype the "s") and re-save the file -- the phoneNumbers
attribute is now recognized! Both in the Persistence Outline as well as
the Persistence Properties panels. But, I'm still missing the other three
attributes.

So, I go to the next attribute (projects) and do the same thing by
benignly modifying the attribute and re-saving the file. Here again --
magic. The projects attribute now appears in both Persistence panels.

But, now for some reason, this magic was better this time and the other
two attributes are now recognized as well -- salary and employmentPeriod.
Without doing any of the benign modifying...

So, I can now reproduce the situation and I know of a workaround that
seems to work most of the time. Is this a new problem or is this a known
situation?

Thanks,
Kevin
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166682 is a reply to message #166675] Wed, 12 April 2006 22:04 Go to previous messageGo to next message
Karen Butzke is currently offline Karen ButzkeFriend
Messages: 220
Registered: July 2009
Senior Member
Kevin wrote:

> Here's the scoop. I close all of my open files (just to make a clean
> re-start). I stop Eclipse and re-start it. I reconnect to my database
> (Derby). I Add Java Persistence to my project. I open my Employee class
> (from section 9.2.2 of the JPA spec).

> In the Persistence Outline, I notice that only 4 of my 8 attributes are
> shown (id, version, name, and address). Navigating to the various
> properties within the source window, the Persistence Properties panel only
> gets updated when I touch one of these 4 "known" properties. If I touch
> any of the other properties, the Persistence Panel either stays where it
> is or it defaults back to the Entity panel -- in either case, it's not
> what I wanted. This was the situation I was seeing this morning and
> caused me to say that this didn't work.

> Now, here's the weird part. If I go to one of the "unknown" properties,
> such as phoneNumbers (either the specific attribute declaration or the
> property methods) and benignly modify some character (ie, backspace over
> the "s" and then retype the "s") and re-save the file -- the phoneNumbers
> attribute is now recognized! Both in the Persistence Outline as well as
> the Persistence Properties panels. But, I'm still missing the other three
> attributes.

> So, I go to the next attribute (projects) and do the same thing by
> benignly modifying the attribute and re-saving the file. Here again --
> magic. The projects attribute now appears in both Persistence panels.

> But, now for some reason, this magic was better this time and the other
> two attributes are now recognized as well -- salary and employmentPeriod.
> Without doing any of the benign modifying...

> So, I can now reproduce the situation and I know of a workaround that
> seems to work most of the time. Is this a new problem or is this a known
> situation?

> Thanks,
> Kevin

Kevin,

I can't say that I've seen this problem before. Are there any exceptions
in the Error log view when you fist open the Employee file? Could you
post the contents of that file as well?

thanks,
Karen
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166708 is a reply to message #166682] Thu, 13 April 2006 12:39 Go to previous messageGo to next message
Kevin Sutter is currently offline Kevin SutterFriend
Messages: 106
Registered: July 2009
Senior Member
Karen Moore wrote:

> Kevin wrote:

>> Here's the scoop. I close all of my open files (just to make a clean
>> re-start). I stop Eclipse and re-start it. I reconnect to my database
>> (Derby). I Add Java Persistence to my project. I open my Employee class
>> (from section 9.2.2 of the JPA spec).

>> In the Persistence Outline, I notice that only 4 of my 8 attributes are
>> shown (id, version, name, and address). Navigating to the various
>> properties within the source window, the Persistence Properties panel only
>> gets updated when I touch one of these 4 "known" properties. If I touch
>> any of the other properties, the Persistence Panel either stays where it
>> is or it defaults back to the Entity panel -- in either case, it's not
>> what I wanted. This was the situation I was seeing this morning and
>> caused me to say that this didn't work.

>> Now, here's the weird part. If I go to one of the "unknown" properties,
>> such as phoneNumbers (either the specific attribute declaration or the
>> property methods) and benignly modify some character (ie, backspace over
>> the "s" and then retype the "s") and re-save the file -- the phoneNumbers
>> attribute is now recognized! Both in the Persistence Outline as well as
>> the Persistence Properties panels. But, I'm still missing the other three
>> attributes.

>> So, I go to the next attribute (projects) and do the same thing by
>> benignly modifying the attribute and re-saving the file. Here again --
>> magic. The projects attribute now appears in both Persistence panels.

>> But, now for some reason, this magic was better this time and the other
>> two attributes are now recognized as well -- salary and employmentPeriod.
>> Without doing any of the benign modifying...

>> So, I can now reproduce the situation and I know of a workaround that
>> seems to work most of the time. Is this a new problem or is this a known
>> situation?

>> Thanks,
>> Kevin

> Kevin,

> I can't say that I've seen this problem before. Are there any exceptions
> in the Error log view when you fist open the Employee file? Could you
> post the contents of that file as well?

> thanks,
> Karen

Okay, I took it a bit slower and watched for any logged errors along the
way. When I first Add Java Persistence to the project (after
re-establishing the database connection), I get the exception that I
posted earlier about the ManyToOne ClassCastException:

An internal error occurred during: "reLoadActiveProject"
java.lang.ClassCastException:
org.eclipse.dali.core.adapters.java.JavaManyToOneMappingMode lAdapter
incompatible with
org.eclipse.dali.core.adapters.ISingleRelationshipMappingMod elAdapter
at
org.eclipse.dali.core.impl.SingleRelationshipMappingImpl.set Optional(SingleRelationshipMappingImpl.java:165)
at
org.eclipse.dali.core.adapters.java.JavaSingleRelationshipMa ppingModelAdapter$2.setPersValue(JavaSingleRelationshipMappi ngModelAdapter.java:56)
:
:

Then, when I do the backspace, re-type and save of the file, I get the
following two errors posted:

Problems occurred when invoking code from plug-in: "org.eclipse.jdt.core".
java.lang.ClassCastException:
org.eclipse.dali.core.adapters.java.JavaManyToOneMappingMode lAdapter
incompatible with
org.eclipse.dali.core.adapters.ISingleRelationshipMappingMod elAdapter
at
org.eclipse.dali.core.impl.SingleRelationshipMappingImpl.set Optional(SingleRelationshipMappingImpl.java:165)
at
org.eclipse.dali.core.adapters.java.JavaSingleRelationshipMa ppingModelAdapter$2.setPersValue(JavaSingleRelationshipMappi ngModelAdapter.java:56)
:
:

Exception occurred in listener of Java element change notification
java.lang.ClassCastException:
org.eclipse.dali.core.adapters.java.JavaManyToOneMappingMode lAdapter
incompatible with
org.eclipse.dali.core.adapters.ISingleRelationshipMappingMod elAdapter
at
org.eclipse.dali.core.impl.SingleRelationshipMappingImpl.set Optional(SingleRelationshipMappingImpl.java:165)
at
org.eclipse.dali.core.adapters.java.JavaSingleRelationshipMa ppingModelAdapter$2.setPersValue(JavaSingleRelationshipMappi ngModelAdapter.java:56)
:
:

So, they all have the same callstack, but different errors are being
detected. And, the same two errors get posted when I do the next benign
modification and save. Any additional saves beyond that point (when all
of the attributes are now recognized and displayed) do not generate these
errors.

Which file are you requesting? The error file or the Employee file? If
you would like, I could provide an Eclipse project with all of the files
from section 9.2.2 of the JPA spec.

Let me know what else you need for this problem.

Thanks,
Kevin
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166723 is a reply to message #166708] Thu, 13 April 2006 13:28 Go to previous messageGo to next message
Karen Butzke is currently offline Karen ButzkeFriend
Messages: 220
Registered: July 2009
Senior Member
Ok, so I'm going to make an assumption here that the error you are getting
is probably causing the mappings not to appear. Since this
ClassCastException won't happen in the current code base, we can hope your
magic mappings just magically start working again. So, you could either
get the head out of CVS or wait until our M2 build comes out early next
week. Or you could yank the 'optional' attribute out of your mapping
annotations, since that appears to be the culprit (not the most helpful
workaround :-)

Karen
Re: Dali EJB3-JPA tooling priorities – feedback requested [message #166731 is a reply to message #166723] Thu, 13 April 2006 14:01 Go to previous message
Kevin Sutter is currently offline Kevin SutterFriend
Messages: 106
Registered: July 2009
Senior Member
Karen wrote:

> Ok, so I'm going to make an assumption here that the error you are getting
> is probably causing the mappings not to appear. Since this
> ClassCastException won't happen in the current code base, we can hope your
> magic mappings just magically start working again. So, you could either
> get the head out of CVS or wait until our M2 build comes out early next
> week. Or you could yank the 'optional' attribute out of your mapping
> annotations, since that appears to be the culprit (not the most helpful
> workaround :-)

Thanks, Karen. I've got other activities to keep myself busy until your
M2 becomes available, so I'll just wait.

Just so that we're sure we're talking about the same problem(s), I tried
your workaround of removing the "optional" attribute. It did immediately
recognize the phoneNumbers property when I did this, but it still didn't
recognize the projects, salary, and employementPeriod properties. And, I
got two new errors logged this time:

Problems occurred when invoking code from plug-in: "org.eclipse.jdt.core".
java.util.ConcurrentModificationException
at
org.eclipse.emf.common.util.BasicEList$EIterator.checkModCou nt(BasicEList.java:1252)
at
org.eclipse.emf.common.util.BasicEList$EIterator.next(BasicE List.java:1200)
at
org.eclipse.dali.internal.utility.iterators.TreeIterator.nex tInternal(TreeIterator.java:120)
at
org.eclipse.dali.internal.utility.iterators.TreeIterator.nex t(TreeIterator.java:104)
at
org.eclipse.dali.internal.utility.iterators.FilteringIterato r.loadNext(FilteringIterator.java:108)
at
org.eclipse.dali.internal.utility.iterators.FilteringIterato r.next(FilteringIterator.java:87)
at
org.eclipse.dali.core.impl.PersistenceModelManager$ElementCh angeProcessor.elementChanged(PersistenceModelManager.java:40 3)
at
org.eclipse.dali.core.impl.PersistenceModelManager$ElementCh angeListener.elementChanged(PersistenceModelManager.java:378 )
at
org.eclipse.jdt.internal.core.DeltaProcessor$3.run(DeltaProc essor.java:1432)
at
org.eclipse.core.internal.runtime.InternalPlatform.run(Inter nalPlatform.java:1044)
:
:

Exception occurred in listener of Java element change notification
java.util.ConcurrentModificationException
at
org.eclipse.emf.common.util.BasicEList$EIterator.checkModCou nt(BasicEList.java:1252)
at
org.eclipse.emf.common.util.BasicEList$EIterator.next(BasicE List.java:1200)
at
org.eclipse.dali.internal.utility.iterators.TreeIterator.nex tInternal(TreeIterator.java:120)
at
org.eclipse.dali.internal.utility.iterators.TreeIterator.nex t(TreeIterator.java:104)
at
org.eclipse.dali.internal.utility.iterators.FilteringIterato r.loadNext(FilteringIterator.java:108)
at
org.eclipse.dali.internal.utility.iterators.FilteringIterato r.next(FilteringIterator.java:87)
at
org.eclipse.dali.core.impl.PersistenceModelManager$ElementCh angeProcessor.elementChanged(PersistenceModelManager.java:40 3)
at
org.eclipse.dali.core.impl.PersistenceModelManager$ElementCh angeListener.elementChanged(PersistenceModelManager.java:378 )
at
org.eclipse.jdt.internal.core.DeltaProcessor$3.run(DeltaProc essor.java:1432)
:
:

Here again, if I do the benign modification and save, these other
attributes appear and I'm good to go until the next Eclipse restart (or
close/re-open of the project).

If you think that these problems are all related and will be resolved by
the M2 drop next week, I'll trust you and wait. Just wanted to make sure
that you had all of the information.

Thanks again for your help!
Kevin
Previous Topic:WSDL Editor - unable to set type for a custom type element
Next Topic:Configure Eclipse for new Axis version
Goto Forum:
  


Current Time: Thu Mar 28 16:04:09 GMT 2024

Powered by FUDForum. Page generated in 0.03957 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top