第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

liferay 7.2 中的 Spring 自動裝配注釋

liferay 7.2 中的 Spring 自動裝配注釋

九州編程 2023-03-17 16:22:39
我想在帶有注釋的 liferay 7.2 中使用 spring-core @Autowired。所以,我有下一個 portletpackage com.aimprosoft.module;import com.aimprosoft.service.EmployeeService;import org.springframework.beans.factory.annotation.Autowired;import javax.portlet.GenericPortlet;import javax.portlet.PortletException;import javax.portlet.RenderRequest;import javax.portlet.RenderResponse;import java.io.IOException;public class SamplePortlet  extends GenericPortlet {    @Autowired    private EmployeeService employeeService;    @Override    protected void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException {        response.getWriter().println(employeeService.toString());    }}那么,我必須在 web.xml 或 portlet.xml 中做什么來設置 spring-core 的上下文偵聽器?例如在 web-servlet 應用程序中我必須添加    <listener>        <listener-class>            org.springframework.web.context.ContextLoaderListener        </listener-class>    </listener>
查看完整描述

1 回答

?
江戶川亂折騰

TA貢獻1851條經(jīng)驗 獲得超5個贊

實際上問題出在春季版本


我使用的是不支持 java 8 的 3.2.0。當我切換到 4.0.0 時,一切都正常了。


綜上所述。為了在 liferay 的 portlet 項目中使用 spring core,我必須:


將上下文監(jiān)聽器添加到我的 WEB-INF/web.xml 文件中

<listener>

    <listener-class>

        org.springframework.web.context.ContextLoaderListener

    </listener-class>

</listener>

<context-param>

    <param-name>contextConfigLocation</param-name>

    <param-value>WEB-INF/applicationContext.xml</param-value> 

</context-param>

然后在每個 portlet 中使用以下方法來初始化@Autowired字段

@Override

public void init() throws PortletException {

    SpringBeanAutowiringSupport.processInjectionBasedOnCurrentContext(this);

}

我有以下持久性單元

<persistence-unit name="departments">

    <provider>org.hibernate.ejb.HibernatePersistence</provider>

    <class>com.aimprosoft.dao.model.Employee</class>

    <class>com.aimprosoft.dao.model.Department</class>

    <properties>

        <property name="hibernate.connection.username" value="username"/>

        <property name="hibernate.connection.password" value="password"/>

        <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>

        <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/departments"/>

        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect"/>

    </properties>

</persistence-unit>

最后 spring 上下文看起來如下

<context:annotation-config/>

<context:component-scan base-package="com.aimprosoft"/>

<bean id="departments" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">

    <property name="persistenceXmlLocation" value="WEB-INF/persistence.xml"/>

</bean>

<bean id="textResource" class="java.util.ResourceBundle" factory-method="getBundle">

    <constructor-arg value="text_bundle"/>

</bean>

<tx:annotation-driven />

<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager"/>



查看完整回答
反對 回復 2023-03-17
  • 1 回答
  • 0 關(guān)注
  • 94 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號