Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF » Two different behaviours for the same action
Two different behaviours for the same action [message #1101308] Wed, 04 September 2013 09:30 Go to next message
Mathieu MONTIN is currently offline Mathieu MONTINFriend
Messages: 26
Registered: October 2012
Junior Member
Hello everybody.

Here is my second question on this forum, and hopefully this time it won't be considered as a "very basic question".

I'm running an Acceleo generation from a model of my own creation. When I run the transformation from a runtime Eclipse Application, it works perfectly well.

But a few days ago, I installed my plugins (one of them containing the transformation) in another Eclipse Platform in order to deliver a functionnal product. However, the transformation is not working here. I launched this Eclipse with the "-consoleLog" option and got the following exception :

InvocationTargetException
caused by StringIndexOutOfBoundException

This last exception is thrown by the method "eObjectForURIFragmentSegment" in the class EModelElementImpl.

So my question is as follow :
How can such different behaviours happen and how could I fix the problem ?

Here is the screenshot of the stacktrace :

index.php/fa/16096/0/

Thank you for your help.
  • Attachment: stack.jpg
    (Size: 216.85KB, Downloaded 267 times)
Re: Two different behaviours for the same action [message #1101391 is a reply to message #1101308] Wed, 04 September 2013 11:50 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 33142
Registered: July 2009
Senior Member
Mathieu,

All I can suggest is setting a breakpoint (perhaps an exception
breaking) to see what URI is being processed and why it's going wrong.
I can't say just from the description and the stack trace.

On 04/09/2013 11:30 AM, Mathieu MONTIN wrote:
> Hello everybody.
>
> Here is my second question on this forum, and hopefully this time it won't be considered as a "very basic question".
>
> I'm running an Acceleo generation from a model of my own creation. When I run the transformation from a runtime Eclipse Application, it works perfectly well.
>
> But a few days ago, I installed my plugins (one of them containing the transformation) in another Eclipse Platform in order to deliver a functionnal product. However, the transformation is not working here. I launched this Eclipse with the "-consoleLog" option and got the following exception :
>
> InvocationTargetException
> caused by StringIndexOutOfBoundException
>
> This last exception is thrown by the method "eObjectForURIFragmentSegment" in the class EModelElementImpl.
>
> So my question is as follow :
> How can such different behaviours happen and how could I fix the problem ?
>
> Here is the screenshot of the stacktrace :
>
>
>
> Thank you for your help.


Ed Merks
Professional Support: https://www.macromodeling.com/
Re: Two different behaviours for the same action [message #1101470 is a reply to message #1101391] Wed, 04 September 2013 13:54 Go to previous messageGo to next message
Mathieu MONTIN is currently offline Mathieu MONTINFriend
Messages: 26
Registered: October 2012
Junior Member
Hi Ed,

Thank's for your answer.

You suggest that I put a breakpoint to see which URI is being processed. But as far as I know (correct me if I'm wrong) one can only set breakpoints when running the Eclipse Application at runtime from another platfort (the development one).

However, when I launch the transformation from this Eclipse, everythings works (too) perfectly. Is there any way to set a breakpoint when launching a simple Eclipse ? It seems weird.

I've spent the last 2 hours trying to figure out what's wrong with a couple of collegues. This is what we tried :
- re-generating the plugin .ui from acceleo (the one that provides the extension point for the generation)
- checking each manifest.mf to see if there was any unexported useful data
- trying to manually load the resource package URI in the java file generated by acceleo for the transformation (methods registerPackages and registerResourceFactory)
- other simple manipulations.

The point is, the error only occurs when the plugins are exported (via an update site) and installed in another platform, which made us wonder if it was a conf problem.

Do you know any configuration adjustment that could differ between the runtime version of Eclipse and the deployment one ?

Thank you again for your answer.

regards
Re: Two different behaviours for the same action [message #1101491 is a reply to message #1101470] Wed, 04 September 2013 14:27 Go to previous messageGo to next message
Mathieu MONTIN is currently offline Mathieu MONTINFriend
Messages: 26
Registered: October 2012
Junior Member
Hello again,

There is something else that you might be interested in :

I'm currently using ObeoDesigner as my main platform (test license) because I need some of the additionnal functionalities Obeo offers (custom graphical editors)

I tried just a few minutes ago to export my plugins into a feature not Obeo-dependant and to install it into a Kepler environment. Everything works just fine. It seems that the Obeo platform has something to do with my problem.

But ObeoDesigner is just an Eclipse product after all. Is there any way I could make it work there ?

Regards,

Mathieu
Re: Two different behaviours for the same action [message #1101503 is a reply to message #1101470] Wed, 04 September 2013 14:45 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 33142
Registered: July 2009
Senior Member
Mathieu,

Comments below.


On 04/09/2013 3:54 PM, Mathieu MONTIN wrote:
> Hi Ed,
> Thank's for your answer.
>
> You suggest that I put a breakpoint to see which URI is being
> processed. But as far as I know (correct me if I'm wrong) one can only
> set breakpoints when running the Eclipse Application at runtime from
> another platfort (the development one).
You can attach a debugger to a running process. I'm not done that
before, so I'm not exactly sure how...
>
> However, when I launch the transformation from this Eclipse,
> everythings works (too) perfectly. Is there any way to set a
> breakpoint when launching a simple Eclipse ? It seems weird.
> I've spent the last 2 hours trying to figure out what's wrong with a
> couple of collegues. This is what we tried :
> - re-generating the plugin .ui from acceleo (the one that provides the
> extension point for the generation)
> - checking each manifest.mf to see if there was any unexported useful
> data
> - trying to manually load the resource package URI in the java file
> generated by acceleo for the transformation (methods registerPackages
> and registerResourceFactory)
> - other simple manipulations.
>
> The point is, the error only occurs when the plugins are exported (via
> an update site) and installed in another platform, which made us
> wonder if it was a conf problem.
> Do you know any configuration adjustment that could differ between the
> runtime version of Eclipse and the deployment one ?
Not really.
> Thank you again for your answer.
Your line numbers for EModelElementImpl don't match up with the 2.9
source, so it's possibly fixed by
https://bugs.eclipse.org/bugs/show_bug.cgi?id=394099 in EMF 2.9...
>
> regards


Ed Merks
Professional Support: https://www.macromodeling.com/
Re: Two different behaviours for the same action [message #1101509 is a reply to message #1101503] Wed, 04 September 2013 14:52 Go to previous messageGo to next message
Mathieu MONTIN is currently offline Mathieu MONTINFriend
Messages: 26
Registered: October 2012
Junior Member
I'll take a look at your solution, thank's
Re: Two different behaviours for the same action [message #1101527 is a reply to message #1101509] Wed, 04 September 2013 15:16 Go to previous messageGo to next message
Mathieu MONTIN is currently offline Mathieu MONTINFriend
Messages: 26
Registered: October 2012
Junior Member
Ed,

Thanks to your link and the fact that my plugins were working on Kepler, I solved my problem by installing the 2.9 version of EMF in my ObeoDesigner.

Thanks for your time and help,

Mathieu
Re: Two different behaviours for the same action [message #1102046 is a reply to message #1101308] Thu, 05 September 2013 09:28 Go to previous messageGo to next message
Mathieu MONTIN is currently offline Mathieu MONTINFriend
Messages: 26
Registered: October 2012
Junior Member
I've installed EMF 2.9 both on my development platform and my deployment plateform. However, I can't figure out why the generation was working on the runtime Eclipse without EMF 2.9. Guess it will stay a mistery.

An issue has risen when I installed EMF 2.9 in my development platform : all my IProgressMonitor are now hidden when I launch my jobs. Is there an explanation linked to the installation of EMF 2.9 ?

The only IProgressMonitor that is still visible is the one automatically generated by Acceleo who is called this way :
PlatformUI.getWorkbench().getProgressService().run(true, true, myOperation);
Re: Two different behaviours for the same action [message #1102055 is a reply to message #1102046] Thu, 05 September 2013 09:40 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 33142
Registered: July 2009
Senior Member
Mathieu,

Comments below.

On 05/09/2013 11:28 AM, Mathieu MONTIN wrote:
> I've installed EMF 2.9 both on my development platform and my
> deployment plateform. However, I can't figure out why the generation
> was working on the runtime Eclipse without EMF 2.9. Guess it will stay
> a mistery.
Yes, it's not entirely clear.
>
> An issue has risen when I installed EMF 2.9 in my development platform
> : all my IProgressMonitor are now hidden when I launch my jobs. Is
> there an explanation linked to the installation of EMF 2.9 ?
I don't think so. It's hard to imagine how EMF itself would have such a
global impact...
>
> The only IProgressMonitor that is still visible is the one
> automatically generated by Acceleo who is called this way :
> PlatformUI.getWorkbench().getProgressService().run(true, true,
> myOperation);
Sorry, I have no idea...


Ed Merks
Professional Support: https://www.macromodeling.com/
Re: Two different behaviours for the same action [message #1102061 is a reply to message #1102055] Thu, 05 September 2013 09:55 Go to previous message
Mathieu MONTIN is currently offline Mathieu MONTINFriend
Messages: 26
Registered: October 2012
Junior Member
Don't by sorry, you've been really helpful with my initial problem, which was far more important than this one !

If I figure out something to solve it, I'll post the solution here !
Previous Topic:EKeys usage
Next Topic:(De)serialize EObjectContainmentEList?
Goto Forum:
  


Current Time: Fri Apr 26 21:52:57 GMT 2024

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

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

Back to the top