2011-09-08 5 views
2

과제에서 lucene 기반의 최대 절전 모드 검색을 구현하고 싶습니다. 도메인 개체 생성을 위해 HyperJaxb3을 사용하고 있습니다.Jaxb 또는 HyperJaxb를 사용하여 @Indexed 주석을 생성하십시오.

HyperJaxb를 사용하여 도메인 개체를 만드는 동안 @Indexed 주석을 추가하려고합니다.

나는 이것에 대한 인터넷 검색을 시도했지만 해결책을 찾을 수 없습니다.

이와 관련하여 어떤 포인터가 큰 도움이 될 것입니다.

+0

@Indexed와 같은 Hibernate Search 주석을 추가하기 위해 annotate 플러그인을 사용했지만 시도 할 수 없었습니다. –

+0

문제를 설명하는 로그 등의 오류 메시지를 게시하십시오. 그것은 효과가있다. – lexicore

답변

2

Annotate plugin이 정답입니다. this example을 참조하십시오.

이것은 스키마에 모습입니다 :

.... 
    xmlns:hs="http://annox.dev.java.net/org.hibernate.search.annotations" 
    ... 

    <xsd:complexType name="USAddress"> 
    <xsd:sequence> 
     <xsd:element name="name" type="xsd:string"> 
     <xsd:annotation> 
      <xsd:appinfo> 
      <annox:annotate> 
       <hs:FieldBridge impl="org.jvnet.hyperjaxb3.ejb.tests.annox.Items"> 
       <params> 
        <hs:Parameter name="foo" value="bar"/> 
       </params> 
       </hs:FieldBridge> 
      </annox:annotate> 
      </xsd:appinfo> 
     </xsd:annotation> 
     </xsd:element> 
     <xsd:element name="street" type="xsd:string"/> 
     <xsd:element name="city" type="xsd:string"/> 
     <xsd:element name="state" type="xsd:string"/> 
     <xsd:element name="zip" type="xsd:decimal"/> 
    </xsd:sequence> 
    <xsd:attribute name="country" type="xsd:NMTOKEN" fixed="US"/> 
    </xsd:complexType> 

또한 여분의 바인딩 파일을 사용할 수 있습니다합니다 (example 참조).

+0

관련 질문은 http://stackoverflow.com/questions/9799837/insert-custom-annotation-in-java-field-using-annotate-plugin-jaxb-upon-xsd에서 확인하십시오. 도움이된다면 좋을 것입니다. – Hari