2017-10-23 5 views
0

私はJavaでバックアップされたWebスクリプトを持っています。のnodeRefを取得するためにSearchService、LANGUAGE_CMISを使用してAlfrescoフォルダのNodeRefを取得

NodeRef activeModelRepositoryNodeRef=searchService.query(StoreRef.STORE_REF_WORKSPACE_SPACESSTORE, 
        SearchService.LANGUAGE_CMIS_STRICT, "select * cmis:objectId where contains ('PATH:\"/app:company_home/app:dictionary/app:models\"')").getNodeRef(0); 

:私はこのようなsearchService方法でLANGUAGE_CMIS_STRICTを使用

/app:company_home/app:dictionary/app:models\ 

を:私はこのPATHでのAlfrescoリポジトリに格納されたフォルダのNodeRefを取得するためにSearchServiceメソッドを使用しますmodelsフォルダしかし、私は私のクエリを実行すると、私はまだ私のログにこのエラーを取得:

ERROR [extensions.webscripts.AbstractRuntime] [http-bio-8080-exec-19] Exception from executeScript: line 1:9 mismatched input 'cmis:objectId' expecting FROM ([@4,9:21='cmis:objectId',<37>,1:9]) in fromClause

SearchServiceクエリ(LANGUAGE_LUCENEを使用したくありません)で使用して、私が間違ったことを教えてもらえますか。 ありがとうございました。

答えて

2

あなたは単にFROMキーワードがありません。

select * FROM cmis:objectId 
+0

ありがとう、私は 'FROM'を追加しましたが、私はまだこのエラーを受け取ります:' org.apache.chemistry.opencmis.commons.exceptions.CmisInvalidArgumentException:型はクエリーでサポートされていません:cmis:objectId'。どのように私はこのエラーを取得するか考えてもらえますか? – nmalloul

+0

アルフレコのバージョンと屋外ログを共有してください。 –

+0

完全な答えは@jeffpottsの答えを見てください。 – Lista

2

これは正しくありません:

select * from cmis:objectId 

WHERE句からCMISのような有効なタイプ、含まれている必要がありますドキュメントまたはカスタム型を。

はたぶん、あなたは何か意味:

select cmis:objectId from cmis:document 

をしかし、私はまた、それがCMISオブジェクトID、いないのAlfrescoノードの参照を返します追加する必要があります。それらは2つの異なるものですが、類似しているかもしれません。

本当にAlfrescoノードrefがalfcmis:nodeRefという名前のプロパティを探したい場合は、

関連する問題