[hibernate-issues] [Hibernate-JIRA] Resolved: (HSEARCH-112) Unkown @FullTextFilter when attempting to associate a filter
Emmanuel Bernard (JIRA)
noreply at atlassian.com
Wed Aug 29 12:35:24 EDT 2007
[ http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-112?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Emmanuel Bernard resolved HSEARCH-112.
--------------------------------------
Resolution: Fixed
Fix Version/s: 3.0.0.cr1
> Unkown @FullTextFilter when attempting to associate a filter
> -------------------------------------------------------------
>
> Key: HSEARCH-112
> URL: http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-112
> Project: Hibernate Search
> Issue Type: Bug
> Components: engine
> Affects Versions: 3.0.0.beta4
> Environment: Linux Ubuntu 7.04 / JDK 1.5.
> Reporter: Gerard Toonstra
> Fix For: 3.0.0.cr1
>
>
> I am using Hibernate Search 3.0.0 Beta 4. This version for me offers functionality that I'd like to use, which is the "enableFullTextFilter" calls. I followed the instructions as per the example. I have multiple entities declared in my Hibernate space, but only one entity that has FullTextFilterDef settings. When searching on that entity using the Filter restriction, the "enableFullTextFilter" call results in a SearchException:
> [WARN] StandardContext[]Exception while dispatching incoming RPC call
> com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract net.sf.pdune.client.dto.IssueBriefDTO[] net.sf.pdune.client.services.IssueService.search(java.lang.String,int,int) throws net.sf.pdune.client.UIException' threw an unexpected exception: org.hibernate.search.SearchException: Unkown @FullTextFilter: project
> at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:268)
> at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:366)
> at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:222)
> at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost(RemoteServiceServlet.java:174)
> I think this is due to the fact that the SearchFactoryImpl class recreates the filterDefinitions map on each call of bindFilterDefs:
> public class SearchFactoryImpl implements SearchFactoryImplementor {
> ...
> private void bindFilterDefs(XClass mappedXClass) {
> filterDefinitions = new HashMap<String, FilterDef>();
> ...
> }
> My code where I am declaring the filter:
> @Entity
> @Table(name="ISSUE")
> @Indexed(index="issue")
> @FullTextFilterDef(name = IssueProjectFilterFactory.FILTER_NAME, impl = IssueProjectFilterFactory.class)
> @SequenceGenerator( name="ISSUE_SEQ", sequenceName="seq_issue")
> public class Issue extends PersistentObject implements Comparable
> and the query code:
> org.apache.lucene.search.Query luceneQuery = MultiFieldQueryParser.parse( query, Issue.FIELDS, flags, analyzer );
> FullTextQuery fullTextQuery = fullTextSession.createFullTextQuery( luceneQuery, Issue.class );
> fullTextQuery.enableFullTextFilter( IssueProjectFilterFactory.FILTER_NAME ).setParameter(
> IssueProjectFilterFactory.PARAM_NAME, projects );
> This logically does not happen when there is only one class being mapped in Hibernate, globally, since the map would not be emptied of the others.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the hibernate-issues
mailing list