hybris 5.1 のアドオン サポートを使用して ycommercewebservices をカスタマイズしていますが、アドオンとそのターゲットの同期中にアドオンからの web.xml が無視されるため、HTTP フィルターを追加または変更する方法がわかりません。何か案は?
1301 次
2 に答える
1
テンプレートの拡張機能はカスタマイズしません。そして、なぜこれはフォーラムにないのですか?
于 2014-02-27T14:52:07.960 に答える
0
最終的には簡単でした。ycommercewebservices-web-spring.xml と同じ ID でフィルターを再宣言するだけですが、addon-web-spring.xml では次のようにします。
<bean id="baseSiteFilter" class="my.own.SelectBaseSiteFilter" >
<property name="baseSiteFilterExclusions" ref="baseSiteFilterExclusions" />
<property name="configurationService" ref="configurationService" />
<property name="sessionService" ref="sessionService" />
<property name="baseSiteService" ref="baseSiteService" />
</bean>
また、新しいフィルターを追加するか、デフォルト フィルターを除外する必要がある場合は、addon-web-spring.xml で commerceWebServicesFilterChainList を再宣言します。
<alias name="defaultCommerceWebServicesFilterChainList" alias="commerceWebServicesFilterChainList" />
<util:list id="defaultCommerceWebServicesFilterChainList">
<!-- generic platform filters -->
<ref bean="log4jFilter" />
<ref bean="tenantActivationFilter"/>
<ref bean="sessionFilter"/>
<!-- commerceWebservices filters -->
<ref bean="baseSiteFilter" />
<ref bean="sessionAttributesFilter" />
<!-- Security -->
<ref bean="springSecurityFilterChain"/>
</util:list>
また、アドオンをインストールする前に、次の行を project.properties.template に追加することを忘れないでください:
ycommercewebservices.additionalWebSpringConfigs.youroccaddon=classpath:/youroccaddon/web/spring/youroccaddon-web-spring.xml
youroccaddon-web-spring.xml は、ycommercewebservices-web-spring.xml の後に spring コンテキストに追加されるため、ycommercewebservices コンテキストから Bean をオーバーライドできます。
于 2014-02-28T05:14:44.123 に答える