Thanks Paul

For some reason the code inside the upgrade class is never called.

I think I should mistyped something. I am checking now.


On Apr 6, 2011, at 12:16 PM, Paul D Yu wrote:

> Miguel
> 
> You will need to call the external sql script from inside of your 
> Migration.java file.
> 
>     @Override
>     public void upgrade(EOEditingContext editingContext, ERXMigrationDatabase 
> database) throws Throwable {
>         
> ERXJDBCUtilities.executeUpdateScriptFromResourceNamed(database.adaptorChannel(),
>  "DInAdminEOModel1_Postgresql_Upgrade.migration", "DIModelFramework");
>     }
> 
> Something like that?
> 
> Paul
> On Apr 6, 2011, at 1:07 PM, Chuck Hill wrote:
> 
>> Is this a "full" Wonder app, extending ERXApplication?  If not, you need to 
>> initiate the migration:
>> 
>>             if (ERXMigrator.shouldMigrateAtStartup())
>>             {
>>                 try
>>                 {
>>                     migrator().migrateToLatest();
>>                 }
>>                 catch (ERXMigrationFailedException e)
>>                 {
>>                     // It might be a missing plugin problem
>>                     new 
>> ERXJDBCConnectionAnalyzer(databaseConnectionDictionary());
>>                     throw e;
>>                 }
>>             }
>> 
>> Chuck
>> 
>> 
>> On Apr 6, 2011, at 9:47 AM, Miguel Angel Torres Avila wrote:
>> 
>>> Hi all,
>>> 
>>> I am trying to implement Migrations in an existing Application.
>>> 
>>> I followed the instructions in this page:
>>> 
>>> http://webobjects.mdimension.com/hudson/job/Wonder/javadoc/er/extensions/migration/package-summary.html
>>> 
>>> and this one 
>>> 
>>> http://webobjects.mdimension.com/hudson/job/Wonder/javadoc/er/extensions/migration/ERXMigration.html
>>> 
>>> I think the steps are:
>>> 
>>> 1. Modify properties file:
>>> 
>>> # Migrations
>>> er.migration.migrateAtStartup=true
>>> er.migration.createTablesIfNecessary=true
>>> er.migration.modelNames=DInAdminEOModel
>>> er.extensions.migration.ERXMigration.useDatabaseSpecificMigrations=true
>>> 
>>> DInAdminEOModel.InitialMigrationVersion=1
>>> DInAdminEOModel.MigrationClassPrefix=com.toracom.app.migration.DInAdminEOModel
>>>  
>>> 
>>> 2. Create class com.toracom.app.migration.DInAdminEOModel1.java
>>> 
>>> /////// BEGIN CLASS
>>> package com.toracom.app.migration;
>>> 
>>> import com.webobjects.eoaccess.EOAdaptorChannel;
>>> import com.webobjects.eoaccess.EOModel;
>>> import com.webobjects.eocontrol.EOEditingContext;
>>> import com.webobjects.foundation.NSArray;
>>> 
>>> import er.extensions.migration.ERXMigration;
>>> import er.extensions.migration.ERXModelVersion;
>>> 
>>> public class DInAdminEOModel1 extends ERXMigration {
>>>     public NSArray<ERXModelVersion> modelDependencies() { 
>>>          return null; 
>>>        } 
>>> 
>>> 
>>>     @Override
>>>     public void upgrade(EOEditingContext editingContext, EOAdaptorChannel 
>>> channel, EOModel model) throws Throwable {
>>>             
>>>     }
>>> 
>>>     @Override
>>>     public void downgrade(EOEditingContext editingContext,  
>>> EOAdaptorChannel channel, EOModel model) throws Throwable {
>>>             // TODO Auto-generated method stub
>>>             
>>>     } 
>>> }
>>> 
>>> ////// END CLASS
>>> 
>>> 
>>> 3. Create DInAdminEOModel1_Postgresql_Upgrade.migration file
>>> 
>>> ALTER TABLE parametros ADD COLUMN modulo_cfdivault_habilitado varchar(5);
>>> UDPATE parametros SET modulo_cfdivault_habilitado = 'false';
>>> ALTER TABLE parametros ALTER COLUMN modulo_cfdivault_habilitado SET NOT 
>>> NULL;
>>> 
>>> 
>>> When I run my application never get the SQL code executed. In the 
>>> Application class I load a Parametros entity but I get the following error
>>> 
>>> Apr 06 11:38:11 dinadmin[55559] DEBUG NSLog  -  evaluateExpression: 
>>> <com.webobjects.jdbcadaptor.PostgresqlExpression: "SELECT DISTINCT 
>>> t0.directorio_raiz_procesamiento_cfd, t0.email_formato, 
>>> t0.encoding_archivo_fuente, t0.encoding_escritura_cfd, 
>>> t0.encoding_escritura_div_sol, t0.encoding_escritura_xml_co, 
>>> t0.encoding_escritura_xml_impresion, t0.encoding_lectura_jaxb, 
>>> t0.encoding_obtencion_co, t0.encoding_trans_co, t0.fh, t0.fhc, 
>>> t0.formato_fecha_dhtmlxgrid, t0.formato_numero_registro_bd, 
>>> t0.formato_numero_registro_bd_corto, t0.fsh, t0.fshnm, t0.iva, 
>>> t0.logs_debug, t0.logs_path, t0.logs_stdout, t0.metodo_impresion, 
>>> t0.modulo_cfdivault_habilitado, t0.moneda_id, t0.nd, t0.ne, t0.nm, 
>>> t0.nombre_aplicacion, t0.np, t0.ntc, t0.parametros_id, t0.retraso_daemon, 
>>> t0.rfc_fisica, t0.rfc_moral, t0.sistema_inicializado, t0.url_birt_viewer, 
>>> t0.version_comprobante FROM parametros t0" withBindings: >
>>> Apr 06 11:38:11 dinadmin[55559] DEBUG NSLog  -  === Rollback Internal 
>>> Transaction
>>> ERROR: column t0.modulo_cfdivault_habilitado does not existat 
>>> org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1608)
>>> at 
>>> org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1343)
>>> at 
>>> org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:194)
>>> at 
>>> org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:451)
>>> at 
>>> org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:336)
>>> 
>>> 
>>> Because the modulo_cfdivault_habilitado column does not exist, so the 
>>> migration's file is never executed.
>>> 
>>> Am I missing something, maybe a missing Framework?
>>> 
>>> Thanks in advance.
>>> 
>>> 
>>> _______________________________
>>> Ing. Miguel Angel Torres Avila
>>> Director General
>>> Tel: +52 (33) 3367 1892
>>> Cel: +52 (33) 3106 8758
>>> E-mail: [email protected]
>>> www.toracom.net
>>> 
>>> Antes de imprimir, piense en el Medio Ambiente. Before printing think about 
>>> the Environment. Avant d'imprimer, pensez à l'Environnement 
>>>  
>>> 
>>> 
>>> _______________________________________________
>>> Do not post admin requests to the list. They will be ignored.
>>> Webobjects-dev mailing list      ([email protected])
>>> Help/Unsubscribe/Update your Subscription:
>>> http://lists.apple.com/mailman/options/webobjects-dev/chill%40global-village.net
>>> 
>>> This email sent to [email protected]
>> 
>> -- 
>> Chuck Hill             Senior Consultant / VP Development
>> 
>> Practical WebObjects - for developers who want to increase their overall 
>> knowledge of WebObjects or who are trying to solve specific problems.    
>> http://www.global-village.net/products/practical_webobjects
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> _______________________________________________
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list      ([email protected])
>> Help/Unsubscribe/Update your Subscription:
>> http://lists.apple.com/mailman/options/webobjects-dev/pyu%40mac.com
>> 
>> This email sent to [email protected]
> 

_______________________________
Ing. Miguel Angel Torres Avila
Director General
Tel: +52 (33) 3367 1892
Cel: +52 (33) 3106 8758
E-mail: [email protected]
www.toracom.net

Antes de imprimir, piense en el Medio Ambiente. Before printing think about the 
Environment. Avant d'imprimer, pensez à l'Environnement 

 

 

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to