jboss7.1.1 部署_在JBoss AS 7上部署BroadleafCommerce 2.0
jboss7.1.1 部署
前2個步驟實際上與Broadleaf無關,但是提到該步驟是為了使其易于執行(復制/粘貼)這些步驟。
步驟#1:在JBoss AS中配置數據源。
<datasource jta="true" jndi-name="java:jboss/datasources/BroadleafDS" pool-name="BroadleafDS_Pool" enabled="true" use-java-context="true" use-ccm="true"><connection-url>jdbc:mysql://localhost:3306/broadleaf</connection-url><driver>mysql</driver><security><user-name>root</user-name><password>admin</password></security><timeout><idle-timeout-minutes>0</idle-timeout-minutes><query-timeout>600</query-timeout></timeout> </datasource> <datasource jta="true" jndi-name="java:jboss/datasources/BroadleafSecureDS" pool-name="BroadleafSecureDS_Pool" enabled="true" use-java-context="true" use-ccm="true"><connection-url>jdbc:mysql://localhost:3306/broadleaf</connection-url><driver>mysql</driver><security><user-name>root</user-name><password>admin</password></security><timeout><idle-timeout-minutes>0</idle-timeout-minutes><query-timeout>600</query-timeout></timeout> </datasource> <datasource jta="true" jndi-name="java:jboss/datasources/BroadleafCmsDS" pool-name="BroadleafCmsDS_Pool" enabled="true" use-java-context="true" use-ccm="true"><connection-url>jdbc:mysql://localhost:3306/broadleaf</connection-url><driver>mysql</driver><security><user-name>root</user-name><password>admin</password></security><timeout><idle-timeout-minutes>0</idle-timeout-minutes><query-timeout>600</query-timeout></timeout> </datasource>步驟2:按照以下步驟更新
<?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://java.sun.com/xml/ns/persistence"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"version="2.0"><persistence-unit name="blPU" transaction-type="RESOURCE_LOCAL"><non-jta-data-source>java:jboss/datasources/BroadleafDS</non-jta-data-source><exclude-unlisted-classes/></persistence-unit><persistence-unit name="blSecurePU" transaction-type="RESOURCE_LOCAL"><non-jta-data-source>java:jboss/datasources/BroadleafSecureDS</non-jta-data-source><exclude-unlisted-classes/></persistence-unit><persistence-unit name="blCMSStorage" transaction-type="RESOURCE_LOCAL"><non-jta-data-source>java:jboss/datasources/BroadleafCmsDS</non-jta-data-source><exclude-unlisted-classes/></persistence-unit> </persistence>步驟#3:如下更新site / src / main / webapp / WEB-INF / applicationContext.xml:
<bean id="blMergedDataSources" class="org.springframework.beans.factory.config.MapFactoryBean"><property name="sourceMap"><map><entry key="java:jboss/datasources/BroadleafDS" value-ref="webDS"/><entry key="java:jboss/datasources/BroadleafSecureDS" value-ref="webSecureDS"/><entry key="java:jboss/datasources/BroadleafCmsDS" value-ref="webStorageDS"/></map></property> </bean>現在,如果您部署該應用程序,將出現以下錯誤:
錯誤創建在從字節數組加載的資源中定義的名稱為'blMergedDataSources'的bean時出錯:使用鍵[TypedStringValue:value,目標類型[null]]設置bean屬性'sourceMap'時,無法解析對bean'webDS'的引用; 嵌套的異常是org.springframework.beans.factory.BeanCreationException:創建名稱為'webDS'的bean時出錯:FactoryBean對象的后處理失敗; 嵌套異常是java.lang.IllegalArgumentException:警告此類型名稱不匹配:org.broadleafcommerce.profile.core.service.CustomerAddressService [Xlint:invalidAbsoluteTypeName]
步驟#4:在site / src / main / webapp / WEB-INF /文件夾中創建
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.0"><deployment><dependencies><module name="org.jboss.ironjacamar.jdbcadapters" /></dependencies><exclusions><module name="org.apache.commons.logging"/><module name="org.apache.log4j"/><module name="org.jboss.logging"/><module name="org.jboss.logmanager"/><module name="org.jboss.logmanager.log4j"/><module name="org.slf4j"/></exclusions></deployment> </jboss-deployment-structure>現在,如果您嘗試部署應用程序,則將收到以下錯誤,因為JBossAS7隨Hibernate4一起提供,并且應用程序正在使用某些hibernate3功能。
@CollectionOfElements@JoinTable(name = "BLC_CATEGORY_IMAGE", joinColumns = @JoinColumn(name = "CATEGORY_ID"))@MapKey(columns = { @Column(name = "NAME", length = 5, nullable = false) })@Column(name = "URL")@Cache(usage = CacheConcurrencyStrategy.READ_WRITE, region="blStandardElements")@BatchSize(size = 50)@Deprecatedprotected Map<String, String> categoryImages = new HashMap<String, String>(10);org.hibernate.MappingException:無法確定類型:java.util.Map,在表:BLC_CATEGORY,對于列:[org.hibernate.mapping.Column(URL)]
因此,讓我們在JBossAS7中安裝hibernate3模塊并使用它。
步驟#5:在JBoss AS 7中安裝Hibernate 3模塊。
將以下jar(可從site.war文件中獲取)復制到jboss-as-7.1.1.FINAL/modules/org/hibernate/3/文件夾中。
antlr-2.7.6.jarcommons-collections-3.2.1.jardom4j-1.6.1.jarhibernate-commons-annotations-3.2.0.Final.jarhibernate-core-3.6.10.Final.jarhibernate-entitymanager-3.6.10.Final.jarjavassist-3.16.1-GA.jar在jboss-as-7.1.1.FINAL/modules/org/hibernate/3/文件夾中創建module.xml 。
<?xml version="1.0" encoding="UTF-8"?> <module xmlns="urn:jboss:module:1.0" name="org.hibernate" slot="3"><resources><resource-root path="hibernate-core-3.6.10.Final.jar"/> <resource-root path="javassist-3.16.1-GA.jar"/><resource-root path="antlr-2.7.6.jar"/> <resource-root path="commons-collections-3.2.1.jar"/> <resource-root path="dom4j-1.6.1.jar"/> <!-- Insert other Hibernate 3 jars to be used here --><resource-root path="hibernate-commons-annotations-3.2.0.Final.jar"/><resource-root path="hibernate-entitymanager-3.6.10.Final.jar"/></resources><dependencies><module name="org.jboss.as.jpa.hibernate" slot="3"/><module name="asm.asm"/><module name="javax.api"/><module name="javax.persistence.api"/><module name="javax.transaction.api"/><module name="javax.validation.api"/><!-- <module name="org.apache.ant"/> --><module name="org.infinispan" optional="true"/><module name="org.javassist"/><module name="org.slf4j"/></dependencies> </module>更新core / src / main / resources / META-INF / persistence.xml
<?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://java.sun.com/xml/ns/persistence"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"version="2.0"><persistence-unit name="blPU" transaction-type="RESOURCE_LOCAL"><non-jta-data-source>java:jboss/datasources/BroadleafDS</non-jta-data-source><exclude-unlisted-classes/><properties><property name="jboss.as.jpa.providerModule" value="org.hibernate:3" /><property name="jboss.as.jpa.managed" value="false" /></properties></persistence-unit><persistence-unit name="blSecurePU" transaction-type="RESOURCE_LOCAL"><non-jta-data-source>java:jboss/datasources/BroadleafSecureDS</non-jta-data-source><exclude-unlisted-classes/><properties><property name="jboss.as.jpa.providerModule" value="org.hibernate:3" /><property name="jboss.as.jpa.managed" value="false" /></properties></persistence-unit><persistence-unit name="blCMSStorage" transaction-type="RESOURCE_LOCAL"><non-jta-data-source>java:jboss/datasources/BroadleafCmsDS</non-jta-data-source><exclude-unlisted-classes/><properties><property name="jboss.as.jpa.providerModule" value="org.hibernate:3" /><property name="jboss.as.jpa.managed" value="false" /></properties></persistence-unit> </persistence> 參考: “ 我的技術實驗”博客上的 JCG合作伙伴 Siva Reddy在JBoss AS 7上部署BroadleafCommerce 2.0 。翻譯自: https://www.javacodegeeks.com/2013/05/deploying-broadleafcommerce-2-0-on-jboss-as-7.html
jboss7.1.1 部署
總結
以上是生活随笔為你收集整理的jboss7.1.1 部署_在JBoss AS 7上部署BroadleafCommerce 2.0的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 国产非特殊化妆品备案查询平台(国产非特殊
- 下一篇: ipv6 攻击(IPV6ddos攻击工具