<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Wazi &#187; Technical Support Team</title>
	<atom:link href="http://olex.openlogic.com/wazi/author/techsupport/feed/" rel="self" type="application/rss+xml" />
	<link>http://olex.openlogic.com/wazi</link>
	<description>Thinking OPEN</description>
	<lastBuildDate>Fri, 06 Nov 2009 19:33:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>PostgreSQL FAQ</title>
		<link>http://olex.openlogic.com/wazi/2009/faq-postgresql/</link>
		<comments>http://olex.openlogic.com/wazi/2009/faq-postgresql/#comments</comments>
		<pubDate>Wed, 01 Apr 2009 15:59:48 +0000</pubDate>
		<dc:creator>Technical Support Team</dc:creator>
				<category><![CDATA[FAQs]]></category>
		<category><![CDATA[postgresql]]></category>

		<guid isPermaLink="false">http://olex.openlogic.com/wazi/?p=2727</guid>
		<description><![CDATA[The OpenLogic Technical Support Team fields lots of questions on PostgreSQL and over 500 other open source packages. They’ve distilled decades of experience and hundreds of support issues down to the most common questions about PostgreSQL.]]></description>
			<content:encoded><![CDATA[<p>The OpenLogic Technical Support Team fields lots of questions on <a href="https://olex.openlogic.com/packages/postgresql" target="_blank">PostgreSQL</a> and over 500 other open source packages. They’ve distilled decades of experience and hundreds of  <a href="https://olex.openlogic.com/support/postgresql-support" target="_blank">PostgreSQL support</a> issues down to the most common questions.</p>
<table class="help_table" border="0">
<thead>
<tr>
<th colspan="2">General Questions</th>
</tr>
</thead>
<tbody>
<tr>
<th>Is it possible to completely disable the operational behavior of bgwriter_all_percent?</th>
<td>To disable bgwriter_all_percent and/or bgwriter_max_pages completely, set both maxpages values and/or both percent values to zero in postgresql.conf, the configuration file.</td>
</tr>
<tr class="odd">
<th>Is there any way to prevent lazy_truncate_heap() from executing?</th>
<td>The best solution for this known issue is to update to the 8.x branch.</td>
</tr>
<tr>
<th>Can VACUUM execution occur at a time when SELECTS will not occur?</th>
<td>Beginning with version 8, PostgreSQL has been enhanced to prevent VACUUM from blocking SELECTS. We strongly recommend updating to version 8 or higher as it includes many new options for tuning VACUUM.</td>
</tr>
<tr class="odd">
<th>How do I disable bgwriter_all_percent and enable only bg_writer_max_pages, or enable only bgwriter_all_percent?</th>
<td>To quit the behavior (operation) of bgwriter_all_percent completely, use any one of the following sets of settings:</p>
<pre>
---------------------------------------------------------
   bgwriter_all_percent = 0
   bgwriter_all_maxpages = 0
---------------------------------------------------------
   bgwriter_all_percent = .333
   bgwriter_all_maxpages = 0
---------------------------------------------------------
   bgwriter_all_percent = 0
   bgwriter_all_maxpages = 5
---------------------------------------------------------
</pre>
<p>In the case of bgwriter_lru, use any one of the same combinations, as indicated below.</p>
<pre>
---------------------------------------------------------
   bgwriter_lru_percent = 0
   bgwriter_lru_maxpages = 0
---------------------------------------------------------
   bgwriter_lru_percent = .333
   bgwriter_lru_maxpages = 0
---------------------------------------------------------
   bgwriter_lru_percent = 0
   bgwriter_lru_maxpages = 5
---------------------------------------------------------
</pre>
<p>For additional information, please reference the PostgreSQL documentation on this issue at http://www.postgresql.org/docs/current/static/runtime-config-resource.html, or contact OpenLogic customer support.</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://olex.openlogic.com/wazi/2009/faq-postgresql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache HTTP Server FAQ</title>
		<link>http://olex.openlogic.com/wazi/2009/faq-apache/</link>
		<comments>http://olex.openlogic.com/wazi/2009/faq-apache/#comments</comments>
		<pubDate>Thu, 12 Feb 2009 21:15:42 +0000</pubDate>
		<dc:creator>Technical Support Team</dc:creator>
				<category><![CDATA[FAQs]]></category>
		<category><![CDATA[apache]]></category>

		<guid isPermaLink="false">http://olex.openlogic.com/wazi/?p=2243</guid>
		<description><![CDATA[The OpenLogic Technical Support Team fields lots of questions on Apache HTTP Server and over 500 other open source packages. They've distilled decades of experience and hundreds of support issues down to the most common questions about Apache.]]></description>
			<content:encoded><![CDATA[<p>The OpenLogic Technical Support Team fields lots of questions on <a href="https://olex.openlogic.com/packages/apache" target="_blank">Apache HTTP Server</a> and over 500 other open source packages. They&#8217;ve distilled decades of experience and hundreds of <a href="https://olex.openlogic.com/support/apache-support" target="_blank">Apache support</a> issues down to the most common questions.</p>
<table class="help_table" border="0">
<thead>
<tr>
<th colspan="2">General Questions</th>
</tr>
</thead>
<tbody>
<tr>
<th>How do I connect Apache 2.2 HTTP Server with two or more remote Tomcat servers?</th>
<td>Create a ReverseProxy from Apache to Tomcat. The best way is to use mod_proxy, mod_proxy_ajp and mod_proxy_balancer. To do this, perform the following steps.</p>
<p>1. When you build Apache from source add these flags:
<pre>
--enable-proxy-ajp --enable-proxy-balancer --enable-proxy</pre>
<p>2. Set up your cluster by doing this:
<pre>
&lt;Proxy balancer://tomcat_cluster&gt;
BalancerMember ajp://192.168.1.1:8009
BalancerMember ajp://192.168.1.2:8009
BalancerMember ajp://192.168.1.3:8009
&lt;/Proxy&gt;</pre>
<p>3. Then, add the Rewrite rule that will Proxy the request to your cluster.
<pre>
RewriteEngine On
RewriteRule ^/(.*)$ balancer://tomcat_cluster%{REQUEST_URI}
[P,QSA,L]</pre>
<p>
</td>
</tr>
<tr class="odd">
<th>How do I change the log settings to add a cookie?</th>
<td>
<pre>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\"
\"%{User-Agent}i\"\"%{Cookie}i\"" combined
</pre>
</td>
</tr>
<tr>
<th>What is the best way to add the server-status module to an Apache server if you have a local monitoring engine like Nagios or Hyperic or Tivoli?</th>
<td>Complete the following:</p>
<p>1. Add the the status_module to your apache configuration.</p>
<p>2. Then configure a virtualhost for server-status only access, edit x as follows:
<pre>
&lt;VirtualHost 127.0.0.1:80&gt;
&lt;Location /server-status&gt;
SetHandler server-status
Order Deny,Allow
Deny from all
Allow from localhost
Allow from 127.0.0.1
&lt;/Location&gt;
&lt;/VirtualHost&gt;</pre>
<p>Now you can access the Apache status screen using this url http://127.0.0.1/server-status ONLY from localhost.</td>
</tr>
<tr class="odd">
<th>How should I configure mod_deflate?</th>
<td>Perform the following steps:</p>
<p>1. Enable the deflate_module in your Apache configuration file (httpd.conf) OR build mod_deflate into the Apache binary using the Apache source and the configure script.</p>
<p>2. If you have an rpm install, add this in the httpd.conf:</p>
<pre>LoadModule deflate_module modules/mod_deflate.so</pre>
<p>3. If you have compiled Apache from source, recompile with these flags:
<pre>
/configure --prefix=/usr/local/ --enable-deflate</pre>
<p>4. To enable mod_deflate in the httpd.conf add this:
<pre>
&lt;IfModule deflate_module&gt;
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE application/x-httpd-eruby
AddOutputFilterByType DEFLATE text/html
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
DeflateFilterNote Input instream
DeflateFilterNote Output outstream
DeflateFilterNote Ratio ratio
LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate
CustomLog logs/deflate_log deflate
&lt;/IfModule&gt;</pre>
<p>This will enable mod deflate for most text and XML files on your site, and, for debugging only, you will have a log file in logs/deflate_log that you can look at to see how effective the module is.</td>
</tr>
<tr>
<th>How do I rotate my Apache log files?</th>
<td>Like many log file rotation applications, logrotate:(http://iain.cx/src/logrotate/) can be managed as follows:</p>
<p>1. Stop the server.</p>
<p>2. Rename the old log file (date.logfile or logfile.1, for example).</p>
<p>3. Compress the archived log.</p>
<p>4. Restart the server.</p>
<p>The current running log file will have the same name as the original so it should not be necessary to change your monitoring routines.</p>
<p>We typically recommend using a general purpose utility like logrotate (which is actually a shell script) rather than a custom script, as this centralizes all the log file rotation on the server to a common set of configuration files. This way you can leverage the support of the logrotate community as well as other system administrators.</td>
</tr>
<tr class="odd">
<th>Why is my Apache file size limited to 1.5MB?</th>
<td>You can use the maxPostSize option to adjust this setting. Do not set your maxPostSize value to &#8220;=0&#8243; as this would expose you to malicious code execution (i.e., crash the server). Additionally, the maxPostSize setting should be set to a real number. </p>
<p>For instance,
<pre>     maxPostSize=1600000</pre>
<p> would allow 16 megabyte files.</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://olex.openlogic.com/wazi/2009/faq-apache/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tomcat FAQ</title>
		<link>http://olex.openlogic.com/wazi/2008/faq-tomcat/</link>
		<comments>http://olex.openlogic.com/wazi/2008/faq-tomcat/#comments</comments>
		<pubDate>Mon, 08 Sep 2008 20:16:35 +0000</pubDate>
		<dc:creator>Technical Support Team</dc:creator>
				<category><![CDATA[FAQs]]></category>
		<category><![CDATA[tomcat]]></category>

		<guid isPermaLink="false">http://annasorchids.wordpress.com/?p=82</guid>
		<description><![CDATA[The OpenLogic Technical Support Team fields lots of questions on Tomcat and over 500 other open source packages. They’ve distilled decades of experience and hundreds of support issues down to the most common questions about Tomcat.]]></description>
			<content:encoded><![CDATA[<p>The OpenLogic Technical Support Team fields lots of questions on <a href="https://olex.openlogic.com/packages/tomcat" target="_blank">Tomcat</a> and over 500 other open source packages. They’ve distilled decades of experience and hundreds of  <a href="https://olex.openlogic.com/support/tomcat-support" target="_blank">Tomcat support</a> issues down to the most common questions.</p>
<table class="help_table" border="0">
<thead>
<tr>
<th colspan="2">General Questions</th>
</tr>
</thead>
<tbody>
<tr>
<th>How might the Tomcat vulnerabilities exposed in CVE-2005-2090 affect us?</th>
<td>First of all, the issues in CVE-2005-2090 have the potential to affect Jakarta Tomcat 5.0.19 (Coyote/1.1) and Tomcat 4.1.24 (Coyote/1.0).</p>
<p>This vulnerability potentially allows the unauthorized modification of HTTP requests by allowing remote attackers to corrupt the Web cache and bypass Web application firewall protection. This could allow cross site scripting attacks via HTTP requests with both a &#8220;Transfer-Encoding&#8221; and &#8220;Content-Length&#8221; header. In a practice known as &#8220;HTTP Request Smuggling,&#8221; Tomcat will then incorrectly handle and forward the body of the request when transmitting it to the receiving server, leading it to be processed as a separate HTTP request.</p>
<p>Given that this vulnerability allows unauthorized modification of requests, it has been classified as a LOW risk.</td>
</tr>
<tr class="odd">
<th>What is the potential impact of CVE-2007-0450?</th>
<td>CVE-2007-0450 is a directory traversal vulnerability that potentially affects Apache HTTP and Tomcat 5.x before 5.5.22 and 6.x before 6.0.10.</p>
<p>When using certain proxy modules (mod_proxy, mod_rewrite, mod_jk), remote attackers can read files using arbitrary files via a .. (dot dot) sequence combined with combinations of the following characters, valid separators in Tomcat, but not Apache:</p>
<ol>
<li> &#8220;/&#8221; (slash)</li>
<li> &#8220;\&#8221; (backslash)</li>
<li> URL-encoded backslash (%5C) characters in the URL.</li>
</ol>
<p>If exploited, this vulnerability allows the unauthorized disclosure of information, and is classified as LOW risk.</td>
</tr>
<tr>
<th>We&#8217;re having a problem stopping Tomcat processes when we run the &#8220;catalina.sh stop&#8221; script.</th>
<td>This common problem typically occurs when the JVM cannot exit the running thread and the thread hangs.</p>
<p>First identify the Tomcat process ID and then run “kill -9 [process id]” (where [process id] is replaced with the process id, including the square brackets). This triggers a thread dump. You can then use the thread dump to identify which thread is hanging. Fix the relevant code, or ignore the state of the JVM.</td>
</tr>
<tr class="odd">
<th>I&#8217;d like to create a mod_rewrite rule that redirects traffic to a different URL.</th>
<td>To do this, configure the mod_rewrite module in the configuration file<br />
to point to the desired URL:</p>
<p>Old value:</p>
<pre>RewriteRule ^(.*) https://%{SERVER_NAME}%{REQUEST_URI)</pre>
<p>New value:</p>
<pre>RewriteRule ^/$ CHEER/logon.jsp [r,nc]</pre>
</td>
</tr>
<tr>
<th>I would like to install Tomcat as a service under a 64 bit version of Windows.</th>
<td>While the Java components of Tomcat run happily under a 64 bit JVM, the installers that build the Windows service are 32 bit executables and won&#8217;t work correctly under 64 bit Windows operating systems.</p>
<p>Fortunately, the Tomcat team has put together 64 bit versions of these executables, although they only include them in the <strong>source</strong> distribution for each version of Tomcat. If you&#8217;ve already installed a copy of Tomcat, here&#8217;s how to update the executables:</p>
<ol>
<li>Download and extract the source distribution for your version of Tomcat from OLEX</li>
<li>Find the directory <tt>tomcat-X.X.XX-src/connectors/procrun/bin/amd64/</tt></li>
<li>Copy the executables from the above directory into the <tt>tomcat-X.X.XX/bin</tt>, overwriting the 32 bit versions</li>
<li>Run the command <tt>service.bat install</tt>. This will install the service under the displayed name Apache Tomcat (the service name will be Tomcat5).</li>
</ol>
</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://olex.openlogic.com/wazi/2008/faq-tomcat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ActiveMQ FAQ</title>
		<link>http://olex.openlogic.com/wazi/2008/faq-active-mq/</link>
		<comments>http://olex.openlogic.com/wazi/2008/faq-active-mq/#comments</comments>
		<pubDate>Thu, 04 Sep 2008 17:21:45 +0000</pubDate>
		<dc:creator>Technical Support Team</dc:creator>
				<category><![CDATA[FAQs]]></category>
		<category><![CDATA[activemq]]></category>

		<guid isPermaLink="false">http://annasorchids.wordpress.com/?p=62</guid>
		<description><![CDATA[The OpenLogic Technical Support Team fields lots of questions on ActiveMQ and over 500 other open source packages. They've distilled decades of experience and hundreds of support issues down to the most common questions about ActiveMQ.]]></description>
			<content:encoded><![CDATA[<p>The OpenLogic Technical Support Team fields lots of questions on <a href="https://olex.openlogic.com/packages/activemq" target="_blank">ActiveMQ</a> and over 500 other open source packages. They&#8217;ve distilled decades of experience and hundreds of <a href="https://olex.openlogic.com/support/activemq-support" target="_blank">ActiveMQ support</a> issues down to the most common questions.</p>
<table class="help_table" border="0">
<thead>
<tr>
<th colspan="2">General Questions</th>
</tr>
</thead>
<tbody>
<tr>
<th>I have three machines on the same network. They use identical hardware and are running identical software. I need to break them into two logical broker networks (A &amp; B). But when I try this, no matter how I configure them, they all find each other. This happens even if I specify different multicast addresses in the TCP transport connector discovery URI. What am I doing wrong?</th>
<td>This is a known issue with MulticastDiscoveryAgent affecting version 4.1.1 &amp; 5.0.0 and, very likely, 5.1.0 GA as well.</p>
<p>For a patch to MulticastDiscoveryAgent, navigate to the <a title="ActiveMQ patch" href="http://issues.apache.org/activemq/secure/attachment/16754/patchfile.txt" target="_blank">ActiveMQ site</a>. You can also read more about this issue on the <a title="More about the issue" href="http://issues.apache.org/activemq/browse/AMQ-1489" target="_blank">ActiveMQ site</a>.</td>
</tr>
<tr class="odd">
<th>We are experiencing a problem with version 5.0.0 in which the InactivityMonitor closes connections when exceptions are thrown. This interrupts message traffic and the messaging process stops functioning.</th>
<td>This is a known issue with ActiveMQ 5.0.0.</p>
<p>It has been resolved in the new official release of ActiveMQ, 5.1.0 GA. OpenLogic recommends you upgrade to this version, available in the OLEX Certified Library.</td>
</tr>
<tr>
<th>I need to install and configure a cluster of ActiveMQ message brokers, but several problems are hampering my efforts to get communication established between my publishing and consuming brokers. Where can I find the documentation for the latest version of ActiveMQ 5.1.x?</th>
<td>Detailed installation and configuration steps are available on the <a title="Config and Install of ActiveMQ" href="http://activemq.apache.org/building.html" target="_blank">ActiveMQ site</a>.</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://olex.openlogic.com/wazi/2008/faq-active-mq/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hibernate FAQ</title>
		<link>http://olex.openlogic.com/wazi/2008/faq-hibernate/</link>
		<comments>http://olex.openlogic.com/wazi/2008/faq-hibernate/#comments</comments>
		<pubDate>Thu, 04 Sep 2008 17:16:57 +0000</pubDate>
		<dc:creator>Technical Support Team</dc:creator>
				<category><![CDATA[FAQs]]></category>
		<category><![CDATA[hibernate]]></category>

		<guid isPermaLink="false">http://annasorchids.wordpress.com/?p=59</guid>
		<description><![CDATA[The OpenLogic Technical Support Team fields lots of questions on Hibernate and over 500 other open source packages. They've distilled decades of experience and hundreds of support issues down to the most common questions about Hibernate.]]></description>
			<content:encoded><![CDATA[<p>The OpenLogic Technical Support Team fields lots of questions on <a href="https://olex.openlogic.com/packages/hibernate" target="_blank">Hibernate</a> and over 500 other open source packages. They&#8217;ve distilled decades of experience and hundreds of <a href="https://olex.openlogic.com/support/hibernate-support" target="_blank">Hibernate support</a> issues down to the most common questions.</p>
<table class="help_table" border="0">
<thead>
<tr>
<th colspan="2">General Questions</th>
</tr>
</thead>
<tbody>
<tr>
<th>We just upgraded to Hibernate 3.2.5 and we&#8217;re suddenly exceeding available cursors. We presume this is what is happening because we&#8217;re encountering a &#8220;max cursors open&#8221; issue in some areas of our system.</th>
<td>This is a known issue and is fixed in version 3.2.6. OpenLogic recommends that you upgrade to the newer version, which is available for download in OLEX.</p>
<p>If you are unable to move to a newer version, the code can be patched using code from the 3.2.6 release. Several patches are needed to update your instance of 3.2.5 code to function like version 3.2.6 code.</p>
<p>The following links provide access to the relevant code fixes necessary to resolve this issue.</p>
<ul>
<li> Generated Lazy statement leak <a href="http://opensource.atlassian.com/projects/hibernate/secure/attachment/13263/generated-lazy-statement-leak.patch" target="_blank">http://opensource.atlassian.com/projects/hibernate/secure/attachment/13263/generated-lazy-statement-leak.patch</a></li>
<li> preparedSelectStatement fix <a href="http://opensource.atlassian.com/projects/hibernate/secure/attachment/13323/HHH-2627-AbstractBatcher_prepareSelectStatement.patch" target="_blank">http://opensource.atlassian.com/projects/hibernate/secure/attachment/13323/HHH-2627-AbstractBatcher_prepareSelectStatement.patch</a></li>
<li> SharedPKOnetoOne fix <a href="http://opensource.atlassian.com/projects/hibernate/secure/attachment/13296/HHH-2627-SharedPKOneToOne.patch" target="_blank">http://opensource.atlassian.com/projects/hibernate/secure/attachment/13296/HHH-2627-SharedPKOneToOne.patch</a></li>
<li> Test case to verify the issue <a href="http://opensource.atlassian.com/projects/hibernate/secure/attachment/13295/HHH-2627-testcase.patchAnswer" target="_blank">http://opensource.atlassian.com/projects/hibernate/secure/attachment/13295/HHH-2627-testcase.patchAnswer</a></li>
</ul>
</td>
</tr>
<tr class="odd">
<th>I am having an issue with the way Hibernate is translating my HQL into SQL. This issue seems to be a bug in Hibernate.</th>
<td>This issue has been reviewed by the Hibernate community and is not considered a bug. Rather, it&#8217;s a misunderstanding of how HQL should be written to work with SQL. Hibernate has, however, provided some information on how to work around the issue. Check out the workaround information available from <a title="Workaround" href="http://opensource.atlassian.com/projects/hibernate/browse/HHH-2647" target="_blank">Atlassian</a>.</td>
</tr>
<tr>
<th>We have a question regarding Hibernate mapping for composite keys. Whenever we try to map composite keys, we get exceptions. Is there a way to map the tables using Hibernate and avoid mapping exceptions?</th>
<td>When defining a composite-id for a persistence-capable Hibernate object, your goal is to identify all the columns of a table (attributes of the object) that are necessary to uniquely identify the thing the object/table represents.</p>
<p>So, when you define a composite-id element of the &#8220;someclass&#8221; class as follows</p>
<pre>&lt;COMPOSITE-ID&gt;
&lt;KEY-PROPERTY name="column1" column="column1"&gt;
&lt;KEY-PROPERTY name="column2" column="column2"&gt;
&lt;KEY-PROPERTY name="column3" column="column3"&gt;
&lt;KEY-PROPERTY name="column4" column="column4"&gt;
&lt;KEY-PROPERTY name="column5" column="column5"&gt;
&lt;COMPOSITE-ID&gt;</pre>
<p>what you are saying is that a &#8217;someclass&#8217; object is always and forever uniquely identified by examining the contents of the following columns: column1, column2, column3, column4, column5. In other words, if all the values of those 5 columns appended together turns out to be &#8216;ABCDE&#8217; (column1 = &#8216;A&#8217;, column2 = &#8216;B&#8217; and so on), we ought not to have another row in that table in the database that would result in &#8216;ABCDE&#8217; if appended together.</p>
<p>Since you&#8217;ve defined the composite-id for the &#8217;someclass&#8217; object in this way, Hibernate expects any other class that maps to this one (in other words, creates an association of some kind) to declare those exact same columns in its mapping. Here are two examples:</p>
<p>A &#8220;many-to-one&#8221; example:</p>
<pre>&lt;many-to-one name="many_name"&gt;
  &lt;column name="column1" /&gt;
  &lt;column name="column2" /&gt;
  &lt;column name="column3" /&gt;
  &lt;column name="column5" /&gt;
&lt;/many-to-one&gt;</pre>
<p>A &#8220;collection&#8221; example:</p>
<pre>&lt;set name="collection_name" inverse="true"&gt;
  &lt;key&gt;
    &lt;column name="column1" /&gt;
    &lt;column name="column2" /&gt;
    &lt;column name="column3" /&gt;
    &lt;column name="column4" /&gt;
    &lt;column name="column5" /&gt;
  &lt;/key&gt;
  &lt;one-to-many class="someclass" /&gt;
&lt;/set&gt;</pre>
<p>The Hibernate documentation warns that you &#8216;must override equals() and hashCode() to implement composite identifier equality. It must also implement Serializable.&#8217;</p>
<p>Trying to define multiple composite-id&#8217;s for the same object simply doesn&#8217;t work, in that it would be akin to defining the &#8216;equals()&#8217; method in two completely separate and distinct ways for one class, which is not even possible.</p>
<p>Once you define a composite-id for a particular class, the exact columns used in this definition must be those used when mapping other objects to the original object you defined the composite-id.</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://olex.openlogic.com/wazi/2008/faq-hibernate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
