2011-02-11 3 views
0

...GWT + 루씬-공간 내가 어떤 진전을 나는이 문제를 조금 다시 말로 표현했다 확인

안녕하세요, 저는 마지막으로 주위를 검색 한

(심하게) 응용 프로그램 내에서 Lucene-Spatial을 사용하는 방법에 대한 도움을 찾으려고합니다.

나는 GWT를 사용하여 클라이언트 측에서 org.apache. * 패키지를 지우고 자한다. GWT는 클라이언트 측에서 모든 것을 직렬 처리하려고 시도한다. (이 튜토리얼을 덜 유용하게 만들었습니다 : [url] http://java.dzone.com/articles/spatial-search-hibernate?utm_source=feedburner & utm_medium = feed & utm_campaign = Feed : + javalobby/frontpage + (Javalobby +/+ Java + Zone) [/ url])

기본적으로 나는 "위도"필드와 "경도"필드를 가진 주소 개체를 가지고 있는데, 이것을 근거로 거리 검색을하고 싶습니다. 나는 다른 방식으로 그것을 더 행해야합니까?

은 지금까지 나는에 가지고있다 : -

[코드] DistanceQueryBuilder DQ = 새로운 DistanceQueryBuilder (새 두 번 (포인트 [1]), 새로운 더블 (점 [0]), 10D, "activity_locationName_latitude" "activity_locationName_longitude", CartesianTierPlotter.DEFALT_FIELD_PREFIX, true);

  FullTextSession fullTextSession = Search.getFullTextSession(session); 


      org.hibernate.Query fullTextQuery = fullTextSession.createFullTextQuery(new ConstantScoreQuery(dq.getFilter()));[/code] 

는하지만 "CartesianTierPlotter.DEFALT_FIELD_PREFIX는"실제로으로 무엇을 의미하는지 이해 해달라고, 및 내 결과 세트는 다시 비어 온다.

건배, 롭

답변

0

나는 현재 루씬/최대 절전 모드 검색하지만 루씬 공간하지를 사용하는 GWT 응용 프로그램에서 일하고 있습니다.

Lucene 공간 사용과 관련된 문제가 있습니까? 그렇지 않다면 GWT 앱에서 Lucene/Hibernate Search 항목을 모두 설정했기 때문에 도움이 될 수 있습니다. GWT 기반 앱에서는 org.apache.lucene 클래스를 사용하고 있습니다.

+0

나는 몇 가지 간단한 검색 기법을 통합했으며 훌륭합니다. 현재 제가 작업하고있는 거리 검색입니다. (그러므로 나는 공간적으로 변했습니다.) 그러나 실제로 그것을 이해하지 못하고 튜토리얼을 찾기 위해 애를 썼습니다. 그러나 나는이 가이드를 발견했다. [link] http://java.dzone.com/articles/spatial-search-hibernate?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed : + javalobby/frontpage+ (Javalobby +/+ Java + Zone) [/ link] ] 그러나 두 번째 코드 블록은 org.apache.spatial의 모듈을 클라이언트 측으로 요구합니다. 이는 GWT가 직렬화하고자 함을 의미합니다. 내가 바보가 아니라면 ..? :) – Rob

+0

당신이 클라이언트 측에 어떤 lucene 물건을 필요로 할 것 같아서 매우 이상하게 보입니다. 나는 이것을 매우 의심한다. "두 번째 코드 블록"을 참조 할 때 @FieldBridge (impl = CartesianTierFieldBridgeImpl.class)가 포함 된 것을 의미합니까? 이것은 확실히 서버 측입니다. 사실, 내가 바보가 아니라면,이 튜토리얼의 모든 코드는 서버 측으로 보인다. – brent777

+0

이것이 작동해야하는 방식은 모델을 업데이트하고 필드 브리지 (모든 서버 측)를 작성한 다음 클라이언트가 쿼리 용어 (단지 문자열과 같음)를 서버에 전송하여 거리 검색을 실행하고 결과를 전송해야합니다 클라이언트에게. 클라이언트는 쿼리가 전혀 실행되지 않는 방법, 즉 Lucene/Hibernate Search가 전혀 존재하지 않는다는 것을 알지 못한다. – brent777

관련 문제