Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [m2m-atl-dev] Exception handling

Yeah I've done that to produce my own exceptions and that works fine - but
the classes that are in ATL that invoke the engine all have "catch()
Exception.printStackTrace()" code that means the transform invoker never
gets proper notification of problems either in the engine of in perferal
activities (such as loading or saving resources).

We have successfully coded around these issues by producing our own
subclasses of ASMEMFModel of AtlEMFModelHandler as well as taking the
entireAtlLauncher class, and in all three eliminating the exception traps
(or, in some cases, simply changing them to throw RuntimeExceptions in
order to remain compatible with superclass methods!). Its THAT that we feel
could be improved to make ATL more applicable to a multitude of different
operational environments

In essence, most of the issues we have found are to do with an obvious
leaning toward "headless" or "runtime eclipse" execution i.e. the code
appears to be wrtiten with only execution in its own transient JVM in mind
and not as part of another tool - see next posting for more on another
feature that evidences this. Just to be clear - there is no problem with
this leaning in principle except that

   it is a little restrictive to the uses that ATL can be put out of the
   box, and
   it is quite "hacky" to code around because these unwanted features are
   embedded in code that provides features that we DO want

which is a shame because apart from these issues (and a few niggles with
the development environment :-)) it has proven to be a fantastic tool.

So lemme try to influence you (maybe with our help :-)) to remove these
"command-line" leanings and have a truely generic ubiquitous tool.

Martin

CSC Financial Services SAS
Registered Office: 14 Place de la Coupole, Axe Liberté, 94220 Charenton Le
Pont, France
Registered in France: RCS Créteil B 323 127 332

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

This is a PRIVATE message. If you are not the intended recipient, please
delete without copying and kindly advise us by e-mail of the mistake in
delivery.
NOTE: Regardless of content, this e-mail shall not operate to bind CSC to
any order or other contract unless pursuant to explicit written agreement
or government initiative expressly permitting the use of e-mail for such
purpose.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------




                                                                       
             "Frédéric                                             
             Jouault"                                                  
             <frederic.jouault                                          To
             @univ-nantes.fr>          "M2M ATL Developer list"        
             Sent by:                  <m2m-atl-dev@xxxxxxxxxxx>       
             m2m-atl-dev-bounc                                          cc
             es@xxxxxxxxxxx                                            
                                                                   Subject
                                       Re: [m2m-atl-dev] Exception     
             16/10/2007 09:07          handling                        
                                                                       
                                                                       
             Please respond to                                         
             M2M ATL Developer                                         
                   list                                                
             <m2m-atl-dev@ecli                                         
                 pse.org>                                              
                                                                       
                                                                       




Hi Martin,

Error notification is usually performed using the Debugger interface:
http://wiki.eclipse.org/ATL_Developer_Doc#Debugger

You can define your own Debugger that logs the errors the way you want :-).


Best regards,

Frédéric

On 10/10/07, Martin J Bartlett <jbartle9@xxxxxxx> wrote:
> (reply to my own email - not good I know)
>
> Of course my quoted mlethod is invoked via
>
> org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModel.loadASMEMFModel
>
> which ALSO would trap any exception and log it!
>
>
> CSC Financial Services SAS
> Registered Office: 14 Place de la Coupole, Axe Liberté, 94220 Charenton
Le
> Pont, France
> Registered in France: RCS Créteil B 323 127 332
>
>
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

>
> This is a PRIVATE message. If you are not the intended recipient, please
> delete without copying and kindly advise us by e-mail of the mistake in
> delivery.
> NOTE: Regardless of content, this e-mail shall not operate to bind CSC to
> any order or other contract unless pursuant to explicit written agreement
> or government initiative expressly permitting the use of e-mail for such
> purpose.
>
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

>
>
>
>
>
>              Martin J
>              Bartlett/FSG/CSC@
>              CSC
To
>              Sent by:                  M2M ATL Developer list
>              m2m-atl-dev-bounc         <m2m-atl-dev@xxxxxxxxxxx>
>              es@xxxxxxxxxxx
cc
>
>
Subject
>              10/10/2007 15:00          [m2m-atl-dev] Exception handling
>
>
>              Please respond to
>              M2M ATL Developer
>                    list
>              <m2m-atl-dev@ecli
>                  pse.org>
>
>
>
>
>
>
> One of the biggest issues we've come across in running ATL is that the
> methods we need to use to kick off transformations rarely throw
exceptions
> - they simply catch them, log them and return (with null if a value is
> expected). For "upstream" classes (launchers for example) this really
isn't
> acceptable - we need to know explicitly WHY something downstream failed
and
> report it in our OWN framework and standards.
>
> Just a simple example: org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModel
> .loadASMEMFModel(String name, ASMEMFModel metamodel, URI uri, ModelLoader
> ml)
>
> (which, incidentally declares that it throws Exception but does not).
That
> load could fail for a number of reasons - FileNotFound being one of the
> most common I would imagine. I want my calling method to simply propagate
> that exception up to ITS caller.
>
> What plans are there to improve this state of affairs?
>
> Martin
>
> CSC Financial Services SAS
> Registered Office: 14 Place de la Coupole, Axe Liberté, 94220 Charenton
Le
> Pont, France
> Registered in France: RCS Créteil B 323 127 332
>
>
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

>
>
> This is a PRIVATE message. If you are not the intended recipient, please
> delete without copying and kindly advise us by e-mail of the mistake in
> delivery.
> NOTE: Regardless of content, this e-mail shall not operate to bind CSC to
> any order or other contract unless pursuant to explicit written agreement
> or government initiative expressly permitting the use of e-mail for such
> purpose.
>
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

>
>
>
>
>
> _______________________________________________
> m2m-atl-dev mailing list
> m2m-atl-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/m2m-atl-dev
>
>
> _______________________________________________
> m2m-atl-dev mailing list
> m2m-atl-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/m2m-atl-dev
>
_______________________________________________
m2m-atl-dev mailing list
m2m-atl-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/m2m-atl-dev




Back to the top