Authors:
marcusn
Apache

LiquiBase EJB Integration

Products: IntelliJ IDEA

Vendor: ESN AB (www.esn.me)

Email: N/A

Website: N/A

SourceCode: com.esn.idea.liquibaseejb_3698.zip

Description:

LiquiBase EJB Integration Plug-in for IntelliJ IDEA. Compares LiquiBase Database ChangeLog with EJB entity model providing inspections and intentions adding to ChangeLog.

Source available at https://github.com/marcusn/LiquibaseEjb

Examples include:
* Add a new entity -> inspection to add liquibase addTable
* Add a new entity field -> inspection to add liquibase addColumn
* Change type of field -> inspection to add liquibase modifyColumn
* Rename field -> dialog to add liquibase renameColumn.

Other features:
* Liquibase EJB facet to configure and create changelog file.
* Context sensentive completion of table and column names within a changelog file.
* Tool window with schema as would be created by liquibase changelog as well as EJB model.
Downloads: 5954
Rating:
Participated in rating: 0
Version Since Build Until Build File/URL Size (Kb) Date Details
1.03. 117.117. . Download 887.12 2012-05-08 14:23:25 details
1.02. 99.32. . Download 887.03 2011-01-29 15:02:21 details
1.01. 85.9732. . Download 204.14 2009-04-29 20:35:04 details
0.100. 75.7941. . Download 203.49 2009-01-12 17:03:37 details
0.93. 75.7941. . Download 132.59 2008-10-28 20:35:08 details
0.91. 40.3000. . Download 130.37 2008-10-25 21:46:16 details
. .
8 updates are hidden show all updates
Screenshot #2371
Screenshot #2266
Screenshot #2270
Screenshot #2268
Screenshot #2269
Screenshot #2265
Screenshot #2267

Recent change notes:

=== 1.03
* IDEA 11 === 1.02
* IDEA 10 === 1.01
* Fix for IDEA hanging on startup
=== 1.0
* IDEA 8.1 Version
=== 0.100
* [LBEJB-72] - Wrong naming of @ManyToMany columns when they start with entity names
* [LBEJB-73] - TIMESTAMP is used wrongly instead of DATETIME

=== 0.99
New Feature

* [LBEJB-2] - @Inheritance support
* [LBEJB-32] - @PrimaryKeyJoinColumn support
* [LBEJB-34] - @DiscriminatorValue,@DiscriminatorColumn support
* [LBEJB-44] - @MapKey support
=== 0.98
New Feature

* [LBEJB-26] - @AssociationOverride support
* [LBEJB-29] - @IdClass support
* [LBEJB-68] - Entity name support
=== 0.97
Bug

* [LBEJB-65] - byte[] suggests null as column type
* [LBEJB-66] - if @Column annotation is used on a field, the plugin recognize it as VARCHAR(255) no matter what other annotations or parameters in @Column says
* [LBEJB-70] - For long Strings CBLOB is used. Should be CLOB.

Improvement

* [LBEJB-58] - Merge handling of join columns for all relationship attributes

New Feature

* [LBEJB-24] - @JoinColumn support
* [LBEJB-25] - @JoinTable support
* [LBEJB-28] - Multicolumn foreign key support
* [LBEJB-69] - columnDefinition support
=== 0.96
Bug

* [LBEJB-18] - Creating table with fields having multiple primary key fields adds one pkconstraint per column
* [LBEJB-45] - Does not recognize column type changes in renameColumn tags in liquibase.xml
* [LBEJB-46] - Stacktrace in checkClass
* [LBEJB-49] - @ManyToOne columns in embedded keys get marked as autoincrement if target fields are
* [LBEJB-50] - AIOOBE when renaming "other side" attribute
* [LBEJB-51] - "Create foreign key" uses invalid column name
* [LBEJB-52] - Foreign key column gets "autoIncrement" attribute set in liquibase.xml
* [LBEJB-53] - *ToOne to fields with id field in superclass does not work
* [LBEJB-57] - Nullpointer in ColumnInspection
* [LBEJB-61] - @Lob gives TEXT type instead of BLOB
* [LBEJB-62] - renameColumn tags are missing columnDataType
* [LBEJB-64] - IndexOutOfBoundsException in AnyToOneModel

Improvement

* [LBEJB-63] - Use liquibase "generic" data types instead of f.i. TEXT


=== 0.95
Bug
* [LBEJB-23] - Refactoring: Extract subclasses of class and member models
* [LBEJB-36] - QuickFix becomes add unique constraint when it should be drop
* [LBEJB-37] - Modify column type does not mention column name
* [LBEJB-38] - renameColumn may cause ArrayIndexOutOfBoundsException
* [LBEJB-39] - Race when applying quickfix, sometimes same fix appears again

Improvement
* [LBEJB-40] - Use addUniqueConstraint instead of using constraints tag when creating columns

New Feature
* [LBEJB-22] - Class rename listener should use new databasemodel
* [LBEJB-27] - @Table support
* [LBEJB-30] - @SecondaryTable support
* [LBEJB-31] - @Version support
* [LBEJB-33] - @TableGenerator support
* [LBEJB-43] - optional support in @Basic
* [LBEJB-42] - @Basic support

=== 0.94
Bug

* [LBEJB-16] - Add index without name causes exception
* [LBEJB-17] - liquibase.xml in output directories are detected as facet
* [LBEJB-19] - Ids generated are sometimes not unique

New Feature

* [LBEJB-3] - Support for @AttributeOverride and @AttributeOverrides
* [LBEJB-4] - @OneToMany without mappedBy
* [LBEJB-5] - @ManyToMany support
* [LBEJB-20] - EJB model view
* [LBEJB-21] - @Column name support

=== 0.93
* Fixed bug with @OneToOne/@OneToMany and mappedBy
=== 0.92
* Null checks

General usage instructions:

Works for any module with JPA facet.

To add liquibase support to project: Add Liquibase Facet and click "Create.." in settings to create a new changelog file.

If you have a changelog file in your project, the Liquibase EJB Facet will be autodetected.

Source code is at git://github.com/marcusn/LiquibaseEjb.git

Comments:

Anonymous
2010-01-21 23:15:07
I use IDEA Maia IU-93.83 and upon startup the LiquiBase plugin causes the IDE to hang, displaying the following error message:

"Fatal error initializing class com.intellij.util.xml.impl.DomApplicationComponent: java.lang.UnsuportedClassVersionError: Bad version number in .class file
Complete error stacktrace was written to idea.log"

Here is the stacktrace:

2010-01-21 21:05:23,901 [ 4722] ERROR - ij.components.ComponentManager - Bad version number in .class file [Plugin: com.esn.idea.liquibaseejb]
com.intellij.diagnostic.PluginException: Bad version number in .class file [Plugin: com.esn.idea.liquibaseejb]
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentsRegistry.a(ComponentManagerImpl.java:475)
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentsRegistry.a(ComponentManagerImpl.java:441)
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentsRegistry.access$100(ComponentManagerImpl.java:427)
at com.intellij.openapi.components.impl.ComponentManagerImpl.a(ComponentManagerImpl.java:117)
at com.intellij.openapi.components.impl.ComponentManagerImpl.initComponents(ComponentManagerImpl.java:372)
at com.intellij.openapi.components.impl.stores.ApplicationStoreImpl.load(ApplicationStoreImpl.java:89)
at com.intellij.openapi.application.impl.ApplicationImpl.load(ApplicationImpl.java:382)
at com.intellij.idea.IdeaApplication.run(IdeaApplication.java:101)
at com.intellij.idea.MainImpl$3.run(MainImpl.java:132)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at com.intellij.ide.IdeEventQueue.f(IdeEventQueue.java:621)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:511)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:372)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Caused by: java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:675)
at java.lang.ClassLoader.defineClass(ClassLoader.java:520)
at com.intellij.util.lang.UrlClassLoader._defineClass(UrlClassLoader.java:119)
at com.intellij.util.lang.UrlClassLoader.defineClass(UrlClassLoader.java:115)
at com.intellij.util.lang.UrlClassLoader._findClass(UrlClassLoader.java:91)
at com.intellij.ide.plugins.cl.PluginClassLoader.loadClassInsideSelf(PluginClassLoader.java:94)
at com.intellij.ide.plugins.cl.PluginClassLoader.loadClass(PluginClassLoader.java:57)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:242)
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentsRegistry.a(ComponentManagerImpl.java:451)
... 18 more
.
marcusn
2009-04-29 20:35:53
Startup hang fixed in 1.01
.
Anonymous
2009-04-22 12:19:10
makes my idea 8.0 and 8.1 hang at startup :(
.
marcusn
2008-11-10 20:27:11
To upgrade from 0.93 and lower, you need to uninstall and install again. This is due to change of id of plugin
.
marcusn
2008-11-10 20:25:56
Due to change of plugin-id, to upgrade from
.