2011-08-05 14 views
2

spring-mvc webappを使用してjackrabbitリポジトリを参照するにはどうすればよいですか?spring-mvcを使用してjackrabbitリポジトリをブラウズする方法

Spring Webコントローラの受信URLリクエストをリポジトリのノードにマップするにはどうすればよいですか?私は、OpenOfficeやWordで以下のようなURLを開き、webdavを介してそれを保存して、ワード文書を開くことができるようにしたいと思います。任意のアイデアを事前に

http://localhost:8080/my-app/my-doc.doc

感謝。

イーモン

+0

私はに見えるかもしれません[スリング](http://sling.apache.org/site/index.html)の代わりに、Web層 – eon

+0

として、スプリングMVCの私は質問を簡素化'just' spring-mvcとjackrabbitへ – eon

答えて

2

Jackrabbitのリポジトリおよび単独のようなリポジトリ構造にデータをマッピングし、あなたはおそらくドメインオブジェクトのためのリポジトリを構築するために使用することができ、かなり低レベルの持続性のAPIを提供するJavaコンテンツリポジトリに関連付けられているJSR標準JCRノード/プロパティ。 javax.jcr。*パッケージにあるJCR APIを使用して、リポジトリを操作します(移植性を最大限に高めるため)。ある意味では、Jackrabbitを使ってデータベースを置き換えることができます。

簡単なgoogle検索では、JDBCとHibernateについてよく知っていると思うものに同様のコンビニエンスラッパーを提供することを目的としたプロジェクトが実際にあり、JCRのみについて示しています。例えば、Spring Modulesプロジェクト:http://java.net/projects/springmodules/が見つかりました。残念なことに、約2年前に最後に更新されたので、まだJCR 1.0にあります。サンプルの使用についてはhttp://java.net/projects/springmodules/sources/svn/content/trunk/samples/jcr/src/org/springmodules/examples/jcr/JcrService.java?rev=2110 を参照してください。しかし、多大な努力を払うことなく独自のJCR2Templateを作成し、テンプレートメソッドパターンを使用して接続や例外ハンドリングなどの繰り返しタスクをカプセル化できます。

リクエストマッピングの場合は、リレーショナルデータベースと同じようにJCRを別のサーバーで実行し、RMI経由で接続することができます。ここに例があります:http://dev.day.com/content/docs/en/crx/current/developing/accessing_jcr_connectors.html 私はこれをSpring MVCアプリケーションでJCRを使用するための「きれいな」方法と考えています。

WebDAV節約について...私はJackrabbitが本当にWebDAVドライブとしてリポジトリのマウントをサポートしていることを知っていますが、私は本当にそれについての経験は全くありませんし、正直に言えばWordどこか編集時にファイルをアップロードする...しかし、私はWordの専門家ではありません。ごめんなさい...

今は... Apache Sling Frameworkは、RESTfulなアプリケーションを構築する興味深いアプローチを提供しています。リポジトリモデルと、リポジトリ構造のいくつかのより高いレベルの抽象化とを統合しています。しかし、サーブレットがSlingで解決される方法は、単純なSpring MVC(http://dev.day.com/content/ddc/blog/2008/07/cheatsheet/_jcr_content/par/download/file参照)とはまったく異なります。したがって、両方のアプローチを調整するのは少し面倒です。

希望の情報があります。

乾杯、 ヨハネス

関連する問題