eコマースプラットフォームHybrisとの統合の経験があります。Hybrisには、ファイルをダンプしてから、ファイルのコンテンツを解析するためのカスタムJavaソースコードを作成できるインポートフォルダーがあることを私は知っています。ただし、これは非常に静的な方法です。Hybrisに直接データを通信/送信する方法はありますか?たとえば、XMLファイル(もちろん、XMLファイルの特定の定義された構造を使用)を使用して、このファイルをMQ、Webサービス、またはその他に送信します
2 に答える
Hybris と対話する方法は多数あります。Hybris は標準の Java/Spring に基づいており、API をすべての Hybris 固有の機能に公開します。私の頭の上には、次の解決策があります。
- 任意のテクノロジー (JAXB を使用) を使用して独自の Web サービスを作成し、Hybris Java API にプラグインします。これはおそらく最も柔軟なソリューションですが、追加のコードを作成して維持する必要があります。
- Hybris の impex メカニズムを使用します (CSV と SQL の一種です)。これは非常に低レベルのメカニズムであり、データ モデルにほぼ直接マップされるため、ここでは高レベルの抽象化はありません。Impexes のパフォーマンスは (控えめに言っても) 素晴らしいものではないので、注意してください。
- すべての Hybris サービスは、XML または JSON ベースのサービスとして公開できます。これらは Hybris によって REST と呼ばれますが、非 SOAP ベースの Web サービスとしてのみ理解されています。それらのほとんどはドキュメント指向ではありません。また、標準の Hybris サービスは通常、私が外部 API に望むものよりも低いレベルの抽象化です。同じメカニズムで独自のサービスを公開することもできます。
- ご指摘のとおり、Hybris はフォルダーを監視して XML または impex ベースのファイルをインポートし、それらをインポートすることもできます。
使用するソリューションの決定は、特定の要件によって異なりますが、ほとんどの場合、Hybris "REST" サービスを使用して標準に近づけるか、より高いレベルのサービスが必要な場合は同じメカニズムを使用して独自のサービスを公開します。明確な公開インターフェースが必要な場合は、抽象化するか、独自の SOAP ベースのサービスを記述します。
hybris プラットフォームと統合するには、さまざまな方法があります。hybris-platform の最近のバージョン 4 を使用している場合は、すぐに使用できる rest-webservices を使用できます。
詳細については、platformwebservices 拡張機能の hybriswiki を確認してください。
もう 1 つの可能性は、 Java Message Serviceに基づく jms テンプレート拡張機能を使用することです。
進むべき道は、通常、データがどこから来ているか、どの形式で利用できるか、どのツールを最も使い慣れているかによって異なります。最後になりましたが、パフォーマンスを考慮してください。何百万もの製品関連アイテムをインポートしていますか?それとも一部のユーザー データのみを同期していますか?