7.8 Hibernate Mapping File Detection Criteria

Bundlor scans for any file that ends with a .hbm extension. If it detects one of these files it scans the file for a number of attributes that can contain class names. If the class name is unqualified (i.e. has no '.' in it), the classname is prepended with the content of the hibernate-mapping tag's package attribute. Many of the attributes that can contain class names can also contain Hibernate keywords corresponding to Hibernate-known types. When these are detected, no manifest requirements are added.

7.8.1 Hibernate Attributes

Using XPath syntax, the following is a list of attributes searched for type names

  • //class/@name
  • //id/@type
  • //generator/@class
  • //composite-id/@class
  • //discriminator/@type
  • //property/@type
  • //many-to-one/@class
  • //one-to-one/@class
  • //one-to-many/@class
  • //many-to-many/@class
  • //version/@type
  • //component/@class
  • //dynamic-component/@class
  • //subclass/@name
  • //joined-subclass/@name
  • //union-subclass/@name
  • //import/@class

7.8.2 Hibernate Keywords

The following is a list of reserved Hibernate keywords that will not trigger the addition of manifest requirements

  • assigned
  • big_decimal
  • big_integer
  • binary
  • blob
  • boolean
  • byte
  • calendar
  • calendar_date
  • character
  • class
  • clob
  • currency
  • date
  • double
  • float
  • foreign
  • guid
  • hilo
  • identity
  • imm_binary
  • imm_calendar
  • imm_calendar_date
  • imm_date
  • imm_serializable
  • imm_time
  • imm_timestamp
  • increment
  • integer
  • locale
  • long
  • native
  • select
  • seqhilo
  • sequence
  • sequence-identity
  • serializable
  • short
  • string
  • text
  • time
  • timestamp
  • timezone
  • true_false
  • uuid
  • yes_no