-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 5 posts ] 
Author Message
 Post subject: Bug with collection filters and joined subclasses
PostPosted: Fri Jun 24, 2005 4:32 am 
Newbie

Joined: Mon Apr 18, 2005 10:02 am
Posts: 14
Location: Zürich, Switzerland
Hibernate Version:
3.0.5



Mapping documents:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping default-access="field">
<!--Hibernate Table Definition-->
<class name="com.swissre.por.common.bo.POROption" table="IUF33S.TOPTION">
<!--Primary Key Definition-->
<id column="ID" name="id" type="integer" unsaved-value="null">
<generator class="native"/>
</id>
<timestamp column="UPD_TS" name="updateTimestamp" unsaved-value="null"/>
<!--Properties Definition-->
<property column="TR_ID" insert="true" name="treatyId" not-null="true" type="integer" unique="false" update="true"/>
<property column="PERIOD_FROM" insert="true" name="periodFrom" not-null="false" type="date" unique="false" update="true"/>
<property column="PERIOD_TO" insert="true" name="periodTo" not-null="false" type="date" unique="false" update="true"/>
<property column="RETROARR" insert="true" name="retroArrangementExists" not-null="false" type="yes_no" unique="false" update="true"/>
<property column="RETROTYP" insert="true" name="retrocessionTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CURRENCY" insert="true" name="currencyKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="OPTION_NAME" insert="true" length="80" name="optionName" not-null="false" type="string" unique="false" update="true"/>
<property column="OPTION_REF" insert="true" length="10" name="optionRef" not-null="false" type="string" unique="false" update="true"/>
<property column="PGMTERMTYP" insert="true" name="programTermTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="PNC_DUE" insert="true" name="pncDue" not-null="false" type="date" unique="false" update="true"/>
<property column="PNC_SENT" insert="true" name="pncSent" not-null="false" type="date" unique="false" update="true"/>
<property column="OWNER" insert="true" name="ownerKey" not-null="true" type="integer" unique="false" update="true"/>
<property column="RESP_UW" insert="true" name="responsibleUwKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="RESP_CM" insert="true" name="responsibleCmKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="PROFIT_CENTER" insert="true" name="profitCenterKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="ORIG_OF_BUS" insert="true" name="originOfBusinessKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="QUOT_CATEG" insert="true" name="quotationCategoryKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="LOCOFF" insert="true" name="localOfficeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="PRMTYP" insert="true" name="premiumTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CVRAGGTYP" insert="true" name="coverAggregateTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CVRAGGINSAMT" insert="true" name="coverAggregateInsuredSumsAmt" not-null="false" type="double" unique="false" update="true"/>
<property column="CVRAGGINSCUR" insert="true" name="coverAggregateInsuredSumsCurKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CVRTYP" insert="true" name="coverTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CVRRATBASTYP" insert="true" name="coverRateBaseTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CVRBASAGGNOSTD" insert="true" length="20" name="coverBaseAggregateNonStd" not-null="false" type="string" unique="false" update="true"/>
<property column="CVRBASAGG" insert="true" name="coverBaseAggregateKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="FIXINTCSTAMT" insert="true" name="fixInternalCostAmt" not-null="false" type="double" unique="false" update="true"/>
<property column="FIXINTCSTCUR" insert="true" name="fixInternalCostCurrencyKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="AGGTIMBNOSTD" insert="true" length="20" name="userDefinedAggregatesBaseType" not-null="false" type="string" unique="false" update="true"/>
<property column="FIXLDCLMTYP" insert="true" name="fixInternalCostPerClaimTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="FXINADMCOAMT" insert="true" name="fixInternalAdminCostAmt" not-null="false" type="double" unique="false" update="true"/>
<property column="FXINADMCOCUR" insert="true" name="fixInternalAdminCostCurrencyKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="FIXINTCOSTYP" insert="true" name="fixInternalCostTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="INTCOSPCT" insert="true" name="internalCostPct" not-null="false" type="double" unique="false" update="true"/>
<property column="RSKPRMTYP" insert="true" name="riskPremiumTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="PRIBASTYP" insert="true" name="priceBaseTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CTCPRIBASTYP" insert="true" name="contractPriceBaseTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="PRMBASTYP" insert="true" name="premiumBaseTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="AGGBAS" insert="true" name="aggregateBaseKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="GROUPING_YN" insert="true" name="groupingExists" not-null="false" type="yes_no" unique="false" update="true"/>
<property column="CED_PARTNER_ID" insert="true" name="cedentId" not-null="false" type="integer" unique="false" update="true"/>
<property column="BRO_PARTNER_ID" insert="true" name="brokerId" not-null="false" type="integer" unique="false" update="true"/>
<property column="NATCAT_INSYNC" insert="true" name="natCatInSync" not-null="false" type="yes_no" unique="false" update="true"/>
<property column="NATCAT_CALCOCC" insert="true" name="natCatCalcOccurred" not-null="false" type="yes_no" unique="false" update="true"/>
<property column="UPD_USER" insert="true" length="10" name="updateUser" not-null="true" type="string" unique="false" update="true"/>
<property column="XLPPERVLDINDKEY" insert="true" name="xlPremiumValidIndicatorKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="IXAPLID" insert="true" name="indexingAppliesTo" not-null="false" type="integer" unique="false" update="true"/>
<property column="COSTPERVLDIND_ID" insert="true" name="costValidPeriodIndicator" not-null="false" type="integer" unique="false" update="true"/>
<property column="ADDPROVEXI" insert="true" name="additionalProvisionsExists" not-null="false" type="yes_no" unique="false" update="true"/>
<property column="NCFRQKEY" insert="true" name="noticeFrequencyKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="ACTUARYKEY" insert="true" name="actuaryKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CHANINDKEY" insert="true" name="channelIndicatorKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="TMZKEY" insert="true" name="timeZoneKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="RITRGKEY" insert="true" name="reinsuranceTriggerKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="ACC_SYSTEM" insert="true" name="accountingSystemKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="AGENTID" insert="true" name="agentId" not-null="false" type="integer" unique="false" update="true"/>
<property column="UWYEAR" insert="true" name="underWritingYear" not-null="false" type="integer" unique="false" update="true"/>
<property column="PUBID_PRG" insert="true" name="publicIdProgram" not-null="false" type="integer" unique="true" update="true"/>
<property column="NEGOPERVLDINDKEY" insert="true" name="negotiationValidIndicatorKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="MAXNONUSLINESTRPCT" insert="true" name="lineStructureNonUsMaximumPct" not-null="false" type="double" unique="false" update="true"/>
<property column="AVGNONUSLINESTRPCT" insert="true" name="lineStructureNonUsAveragePct" not-null="false" type="double" unique="false" update="true"/>
<property column="MAXUSLINESTRPCT" insert="true" name="lineStructureUsMaximumPct" not-null="false" type="double" unique="false" update="true"/>
<property column="AVGUSLINESTRPCT" insert="true" name="lineStructureUsAveragePct" not-null="false" type="double" unique="false" update="true"/>
<property column="MAXPRODLINESTRPCT" insert="true" name="lineStructureProductsMaximumPct" not-null="false" type="double" unique="false" update="true"/>
<property column="AVGPRODLINESTRPCT" insert="true" name="lineStructureProductsAveragePct" not-null="false" type="double" unique="false" update="true"/>
<property column="ADDTERMEXI" insert="true" name="additionalTermsExists" not-null="false" type="yes_no" unique="false" update="true"/>
<property column="ACTIVE_YN" insert="true" name="programActive" not-null="true" type="yes_no" unique="false" update="true"/>
<property column="CURCONVDATE" insert="true" name="currencyConversionDate" not-null="false" type="date" unique="false" update="true"/>
<property column="TERRVLDINDKEY" insert="true" name="terrorismValidIndicatorKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CEDENTNAME" insert="true" length="255" name="cedentName" not-null="false" type="string" unique="false" update="true"/>
<property column="BROKERNAME" insert="true" length="255" name="brokerName" not-null="false" type="string" unique="false" update="true"/>
<!--Associations Definition-->
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORDealPipeline" column="DEALPL_ID" insert="true" name="dealPipeline" unique="true" update="true"/>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="uwComments" order-by="ID">
<key column="OP_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORUwComment"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="businesss" order-by="ID">
<key column="OP_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORBusiness"/>
<filter condition=":active = ACTIVE_YN" name="activeFilter"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="coveredPortfolios" order-by="ID">
<key column="OP_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORCoveredPortfolio"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="specialAcceptances" order-by="ID">
<key column="OP_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORSpecialAcceptance"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="historySnapshots" order-by="HIST_ID">
<key column="OP_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORHistorySnapshot"/>
</bag>
<filter condition=":active = ACTIVE_YN" name="activeFilter"/>
</class>
<!--Filters-->
</hibernate-mapping>


<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping default-access="field">
<!--Hibernate Table Definition-->
<class name="com.swissre.por.common.bo.PORBusinessAttributes" table="IUF33S.TBUSATTRIB">
<!--Primary Key Definition-->
<id column="ID" name="id" type="integer" unsaved-value="null">
<generator class="native"/>
</id>
<timestamp column="UPD_TS" name="updateTimestamp" unsaved-value="null"/>
<!--Properties Definition-->
<property column="CR_TP_1" insert="true" name="criteriaType1" not-null="false" type="integer" unique="false" update="true"/>
<property column="CR_TP_2" insert="true" name="criteriaType2" not-null="false" type="integer" unique="false" update="true"/>
<property column="TYPEOFBUSINESS" insert="true" name="typeOfBusinessKey" not-null="true" type="integer" unique="false" update="true"/>
<property column="ADMSYSTEM" insert="true" name="adminSystemKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="ADMSYSTEMID" insert="true" length="32" name="adminSystemId" not-null="false" type="string" unique="false" update="true"/>
<property column="LAYER" insert="true" name="layer" not-null="false" type="integer" unique="false" update="true"/>
<property column="BUSVAR" insert="true" length="10" name="businessVariant" not-null="false" type="string" unique="false" update="true"/>
<property column="PREFBUS" insert="true" name="preferredBusiness" not-null="false" type="yes_no" unique="false" update="true"/>
<property column="REFERENCE" insert="true" length="20" name="reference" not-null="false" type="string" unique="false" update="true"/>
<property column="CLIENT_REF" insert="true" length="20" name="clientRef" not-null="false" type="string" unique="false" update="true"/>
<property column="BUSINESS_NAME" insert="true" length="80" name="name" not-null="true" type="string" unique="false" update="true"/>
<property column="OFFSHRPCT" insert="true" name="offeredSharePct" not-null="false" type="double" unique="false" update="true"/>
<property column="BUSINESS_STATUS" insert="true" name="businessStatusKey" not-null="true" type="integer" unique="false" update="true"/>
<property column="NOVELTY" insert="true" name="noveltyKey" not-null="true" type="integer" unique="false" update="true"/>
<property column="CANPTY" insert="true" name="cancellationPartyKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CANDAT" insert="true" name="cancellationDate" not-null="false" type="date" unique="false" update="true"/>
<property column="CANCELTYPE" insert="true" name="cancellationTypeKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="RATINGSYSTEM" insert="true" name="ratingSystemKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="RATINGSYSTEMID" insert="true" length="1024" name="ratingSystemId" not-null="false" type="string" unique="false" update="true"/>
<property column="SETINFORCEUSER" insert="true" length="10" name="setInForceUser" not-null="false" type="string" unique="false" update="true"/>
<property column="SETINFORCEON" insert="true" name="setInForceOnDate" not-null="false" type="timestamp" unique="false" update="true"/>
<property column="PRIMELOB" insert="true" name="primaryMainLineOfBusiness" not-null="false" type="integer" unique="false" update="true"/>
<property column="OPPEXISTED" insert="true" name="opportunityExisted" not-null="false" type="yes_no" unique="false" update="true"/>
<property column="EXTSTATUS" insert="true" name="externalStatusKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="EXTSTATUS_TS" insert="true" name="externalStatusTimestamp" not-null="false" type="timestamp" unique="false" update="true"/>
<property column="MIG_SOURCE" insert="true" name="migrationSource" not-null="false" type="integer" unique="false" update="true"/>
<property column="OTHREAKEY" insert="true" name="otherReasonKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="DECBY" insert="true" name="declinedByKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CANPRVKEY" insert="true" name="cancellationProvisionsKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CANCOMMENT" insert="true" length="3800" name="cancellationComment" not-null="false" type="string" unique="false" update="true"/>
<property column="BUSREAKEY" insert="true" name="businessReasonForStatusKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="OTHREATEXT" insert="true" length="1024" name="otherReasonText" not-null="false" type="string" unique="false" update="true"/>
<property column="PUBID_BUS" insert="true" name="publicIdBusiness" not-null="false" type="integer" unique="true" update="true"/>
<property column="OTHERREASN" insert="true" length="80" name="otherReason" not-null="false" type="string" unique="false" update="true"/>
<property column="MAJORCLSKEY" insert="true" name="majorClassOfBusinessKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CANRIGHTSKEY" insert="true" name="cancellationRightsKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="CANTERMSKEY" insert="true" name="cancellationTermsKey" not-null="false" type="integer" unique="false" update="true"/>
<property column="DWNGRDPRVIND" insert="true" name="downgradingProvisionsIndicator" not-null="false" type="yes_no" unique="false" update="true"/>
<property column="ACTIVE_YN" insert="true" name="businessActive" not-null="true" type="yes_no" unique="false" update="true"/>
<property column="STATUSB4REVISION" insert="true" name="statusBeforeRevisionKey" not-null="false" type="integer" unique="false" update="true"/>
<!--Associations Definition-->
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORPricing" column="PRICING_ID" insert="true" name="pricing" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORCoverStructure" column="CVRSTR_ID" insert="true" name="coverStructure" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORCoverLimitation" column="CVRLMT_ID" insert="true" name="coverLimitation" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORCost" column="COST_ID" insert="true" name="cost" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORCommission" column="COMM_ID" insert="true" name="commission" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORXLPremium" column="XLPRM_ID" insert="true" name="xLPremium" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORIndexClauseHeader" column="IDXHDR_ID" insert="true" name="indexClauseHeader" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORNegotiation" column="NEGO_ID" insert="true" name="negotiation" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORThreat" column="THREAT_ID" insert="true" name="threat" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORAccounting" column="ACC_ID" insert="true" name="accounting" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORExclusions" column="EXCL_ID" insert="true" name="exclusions" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORAdditionalProvisions" column="ADDPROV_ID" insert="true" name="additionalProvisions" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORAdditionalTerms" column="ADDTERM_ID" insert="true" name="additionalTerms" unique="true" update="true"/>
<many-to-one cascade="all" class="com.swissre.por.common.bo.PORPricingFSBG" column="PRICINGFSBG_ID" insert="true" name="pricingFSBG" unique="true" update="true"/>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="businessComments" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORBusinessComment"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="generalSections" order-by="SEQ">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORGeneralSection"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="pricingSections" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORPricingSection"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="natCats" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORNatCat"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="accountingClassifications" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORAccountingClassification"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="retrocessionaires" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORRetrocessionaire"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="subCedents" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORSubCedent"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="businessLobs" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORBusinessLob"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="businessTypeOfCovers" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORBusinessTypeOfCover"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="businessGeos" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORBusinessGeo"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="businessRegions" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORBusinessRegion"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="businessCriteria1s" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORBusinessCriteria1"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="businessCriteria2s" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORBusinessCriteria2"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="businessGeoUWAs" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORBusinessGeoUWA"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="terrorisms" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORTerrorism"/>
</bag>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="cDFRequests" order-by="ID">
<key column="BUAT_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORCDFRequest"/>
</bag>
<joined-subclass name="com.swissre.por.common.bo.PORBusiness" table="IUF33S.TBUSINESS">
<!--Key Definition-->
<key>
<column name="BUAT_ID"/>
</key>
<!--Properties Definition-->
<!--Associations Definition-->
<many-to-one class="com.swissre.por.common.bo.POROption" column="OP_ID" insert="true" lazy="false" name="option" not-null="true" update="true"/>
<bag cascade="all-delete-orphan" inverse="true" lazy="false" name="businessAmendments" order-by="AMDNUMBER">
<key column="BU_ID"/>
<one-to-many class="com.swissre.por.common.bo.PORBusinessAmendment"/>
</bag>
</joined-subclass>
<joined-subclass name="com.swissre.por.common.bo.PORBusinessAmendment" table="IUF33S.TBUSAMENDMENT">
<!--Key Definition-->
<key>
<column name="BUAT_ID"/>
</key>
<!--Properties Definition-->
<property column="AMDNUMBER" insert="true" name="amendmentNumber" not-null="true" type="integer" unique="true" update="true"/>
<property column="AMDVALFROMDAT" insert="true" name="amendmentValidFrom" not-null="true" type="date" unique="false" update="true"/>
<property column="AMDVALTODAT" insert="true" name="amendmentValidTo" not-null="true" type="date" unique="false" update="true"/>
<!--Associations Definition-->
<many-to-one class="com.swissre.por.common.bo.PORBusiness" column="BU_ID" insert="true" lazy="false" name="business" not-null="true" update="true"/>
</joined-subclass>
<filter condition=":active = ACTIVE_YN" name="activeFilter"/>
</class>
<!--Filters-->
</hibernate-mapping>







Full stack trace of any exception that occurs:
[6/24/05 10:22:47:041 CEST] 763196ac SystemOut O 2005-06-24 10:22:47,041| 148784|WARN |[thread.pool : 2]|org.hibernate.util.JDBCExceptionReporter::logExceptions:71 SQL Error: -206, SQLState: 42S22
[6/24/05 10:22:47:041 CEST] 763196ac SystemOut O 2005-06-24 10:22:47,041| 148784|ERROR|[thread.pool : 2]|org.hibernate.util.JDBCExceptionReporter::logExceptions:72 [IBM][CLI Driver][DB2] SQL0206N "BUSINESSS0_.ACTIVE_YN" is not valid in the context where it is used. SQLSTATE=42703

[6/24/05 10:22:47:057 CEST] 763196ac SystemOut O 2005-06-24 10:22:47,057| 148800|ERROR|[thread.pool : 2]|issre.iuf.persitency.hibernate.QueryBean::getProgram:152 Unable to retrieve program: 100150
org.hibernate.exception.SQLGrammarException: could not initialize a collection: [com.swissre.por.common.bo.POROption.businesss#100150]
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:59)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.loader.Loader.loadCollection(Loader.java:1441)
at org.hibernate.loader.collection.OneToManyLoader.initialize(OneToManyLoader.java:111)
at org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:488)
at org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:60)
at org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1430)
at org.hibernate.collection.AbstractPersistentCollection.forceInitialization(AbstractPersistentCollection.java:280)
at org.hibernate.engine.PersistenceContext.initializeNonLazyCollections(PersistenceContext.java:796)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:223)
at org.hibernate.loader.Loader.doList(Loader.java:1593)
at org.hibernate.loader.Loader.list(Loader.java:1577)
at org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:111)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1322)
at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:300)
at org.hibernate.impl.CriteriaImpl.uniqueResult(CriteriaImpl.java:433)
at com.swissre.iuf.persitency.hibernate.QueryBean.getProgram(QueryBean.java:145)
at com.swissre.iuf.persitency.hibernate.QueryBean.getProgram(QueryBean.java:126)
at com.swissre.iuf.persitency.hibernate.EJSLocalStatelessQuery_3445efcf.getProgram(EJSLocalStatelessQuery_3445efcf.java:183)
at com.swissre.iuf.persitency.hibernate.PersitentStoreImpl.getProgram(PersitentStoreImpl.java:111)
at com.swissre.por.server.service.PORPersistencyService.getOption(PORPersistencyService.java:73)
at com.swissre.por.server.service.impl.POROptionServiceServerImpl.getOption(POROptionServiceServerImpl.java:100)
at com.swissre.por.transport.IUFBusinessSessionBean.getOption(IUFBusinessSessionBean.java:285)
at com.swissre.por.transport.IUFBusinessSessionBean.getGZippedOption(IUFBusinessSessionBean.java:268)
at com.swissre.por.transport.EJSRemoteStatelessIUFBusinessSession_d13253fd.getGZippedOption(EJSRemoteStatelessIUFBusinessSession_d13253fd.java:270)
at com.swissre.por.transport._EJSRemoteStatelessIUFBusinessSession_d13253fd_Tie.getGZippedOption(_EJSRemoteStatelessIUFBusinessSession_d13253fd_Tie.java:535)
at com.swissre.por.transport._EJSRemoteStatelessIUFBusinessSession_d13253fd_Tie._invoke(_EJSRemoteStatelessIUFBusinessSession_d13253fd_Tie.java:325)
at com.ibm.CORBA.iiop.ServerDelegate.dispatchInvokeHandler(ServerDelegate.java:604)
at com.ibm.CORBA.iiop.ServerDelegate.dispatch(ServerDelegate.java:457)
at com.ibm.rmi.iiop.ORB.process(ORB.java:398)
at com.ibm.CORBA.iiop.ORB.process(ORB.java:1598)
at com.ibm.rmi.iiop.Connection.doWork(Connection.java:2166)
at com.ibm.rmi.iiop.WorkUnitImpl.doWork(WorkUnitImpl.java:63)
at com.ibm.ejs.oa.pool.PooledThread.run(ThreadPool.java:95)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:672)
Caused by:
COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2] SQL0206N "BUSINESSS0_.ACTIVE_YN" is not valid in the context where it is used. SQLSTATE=42703
at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.throw_SQLException(Unknown Source)
at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.throw_SQLException(Unknown Source)
at COM.ibm.db2.jdbc.app.SQLExceptionGenerator.check_return_code(Unknown Source)
at COM.ibm.db2.jdbc.app.DB2PreparedStatement.execute2(Unknown Source)
at COM.ibm.db2.jdbc.app.DB2PreparedStatement.executeQuery(Unknown Source)
at com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement.executeQuery(WSJdbcPreparedStatement.java:417)
at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:120)
at org.hibernate.loader.Loader.getResultSet(Loader.java:1272)
at org.hibernate.loader.Loader.doQuery(Loader.java(Compiled Code))
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:218)
at org.hibernate.loader.Loader.loadCollection(Loader.java:1434)
... 32 more


DB2 V7:

The generated SQL (show_sql=true):
select businesss0_.OP_ID as OP2_1_, businesss0_.BUAT_ID as BUAT1_1_, businesss0_.BUAT_ID as ID0_, businesss0_1_.UPD_TS as UPD11_34_0_, businesss0_1_.CR_TP_1 as CR12_34_0_, businesss0_1_.CR_TP_2 as CR13_34_0_, businesss0_1_.TYPEOFBUSINESS as TYPEO14_34_0_, businesss0_1_.ADMSYSTEM as ADMSYS8_34_0_, businesss0_1_.ADMSYSTEMID as ADMSYS9_34_0_, businesss0_1_.LAYER as LAYER34_0_, businesss0_1_.BUSVAR as BUSVAR34_0_, businesss0_1_.PREFBUS as PREFBUS34_0_, businesss0_1_.REFERENCE as REFERE7_34_0_, businesss0_1_.CLIENT_REF as CLIENT15_34_0_, businesss0_1_.BUSINESS_NAME as BUSINESS3_34_0_, businesss0_1_.OFFSHRPCT as OFFSH16_34_0_, businesss0_1_.BUSINESS_STATUS as BUSINESS2_34_0_, businesss0_1_.NOVELTY as NOVELTY34_0_, businesss0_1_.CANPTY as CANPTY34_0_, businesss0_1_.CANDAT as CANDAT34_0_, businesss0_1_.CANCELTYPE as CANCE20_34_0_, businesss0_1_.RATINGSYSTEM as RATIN21_34_0_, businesss0_1_.RATINGSYSTEMID as RATIN22_34_0_, businesss0_1_.SETINFORCEUSER as SETIN23_34_0_, businesss0_1_.SETINFORCEON as SETIN24_34_0_, businesss0_1_.PRIMELOB as PRIMELOB34_0_, businesss0_1_.OPPEXISTED as OPPEX26_34_0_, businesss0_1_.EXTSTATUS as EXTST27_34_0_, businesss0_1_.EXTSTATUS_TS as EXTST28_34_0_, businesss0_1_.MIG_SOURCE as MIG29_34_0_, businesss0_1_.OTHREAKEY as OTHRE30_34_0_, businesss0_1_.DECBY as DECBY34_0_, businesss0_1_.CANPRVKEY as CANPR32_34_0_, businesss0_1_.CANCOMMENT as CANCO33_34_0_, businesss0_1_.BUSREAKEY as BUSRE34_34_0_, businesss0_1_.OTHREATEXT as OTHRE35_34_0_, businesss0_1_.PUBID_BUS as PUBID36_34_0_, businesss0_1_.OTHERREASN as OTHER37_34_0_, businesss0_1_.MAJORCLSKEY as MAJOR38_34_0_, businesss0_1_.CANRIGHTSKEY as CANRI39_34_0_, businesss0_1_.CANTERMSKEY as CANTE40_34_0_, businesss0_1_.DWNGRDPRVIND as DWNGR41_34_0_, businesss0_1_.ACTIVE_YN as ACTIVE10_34_0_, businesss0_1_.STATUSB4REVISION as STATUSB42_34_0_, businesss0_1_.PRICING_ID as PRICING43_34_0_, businesss0_1_.CVRSTR_ID as CVRSTR44_34_0_, businesss0_1_.CVRLMT_ID as CVRLMT45_34_0_, businesss0_1_.COST_ID as COST46_34_0_, businesss0_1_.COMM_ID as COMM47_34_0_, businesss0_1_.XLPRM_ID as XLPRM48_34_0_, businesss0_1_.IDXHDR_ID as IDXHDR49_34_0_, businesss0_1_.NEGO_ID as NEGO50_34_0_, businesss0_1_.THREAT_ID as THREAT51_34_0_, businesss0_1_.ACC_ID as ACC52_34_0_, businesss0_1_.EXCL_ID as EXCL53_34_0_, businesss0_1_.ADDPROV_ID as ADDPROV54_34_0_, businesss0_1_.ADDTERM_ID as ADDTERM55_34_0_, businesss0_1_.PRICINGFSBG_ID as PRICI56_34_0_, businesss0_.OP_ID as OP2_35_0_ from IUF33S.TBUSINESS businesss0_ inner join IUF33S.TBUSATTRIB businesss0_1_ on businesss0_.BUAT_ID=businesss0_1_.ID where ? = businesss0_.ACTIVE_YN and businesss0_.OP_ID=? order by businesss0_.ID



Hi,

When I apply a filer on a collection which contains joined subclasses and the COLUMN is on base table, then hibernate chooses the derived table.
In the above example businesss0_.ACTIVE_YN should actually be businesss0_1_.ACTIVE_YN.

Thanks for your comments
Juerg


Top
 Profile  
 
 Post subject:
PostPosted: Fri Jun 24, 2005 10:24 am 
Hibernate Team
Hibernate Team

Joined: Tue Aug 26, 2003 12:50 pm
Posts: 5130
Location: Melbourne, Australia
Correct and expected behavior.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Jun 24, 2005 10:40 am 
Newbie

Joined: Mon Apr 18, 2005 10:02 am
Posts: 14
Location: Zürich, Switzerland
That means I have to move the ACTIVE_YN column to the derived table.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Jun 24, 2005 10:43 am 
Hibernate Team
Hibernate Team

Joined: Tue Aug 26, 2003 12:50 pm
Posts: 5130
Location: Melbourne, Australia
Either that, or map the association as being to the superclass.


Top
 Profile  
 
 Post subject: Re: Bug with collection filters and joined subclasses
PostPosted: Thu Jan 31, 2013 5:50 pm 
Newbie

Joined: Thu Jun 07, 2012 10:03 am
Posts: 8
Hi,

I know this is an old discussion but I would like to restart the thread.

I'm encountering the same problem but any of the solution you proposed seems to be acceptable.

1. Moving the problematic columns to the subclasses implies code duplication. These properties are declared in a superclass since they may be relevant for many subclasses.

2. What do you mean by "map the association as being to the superclass"? Do you mean changing the type of the association (e.g. List<SuperClass> instead of List<SubClass1>)? If yes, it may not be acceptable. One would especially use List<SubClass1> is he wants the meaning of the list is relevant only for SubClass1 instances.

I'm completely lost with this issue. Is there any other way to solve it?

Thanks
Mickael


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 5 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.