如何從AEM as a Cloud Service連線Oracle資料庫?
本文就如何從Adobe Experience Manager (AEM) as a Cloud Service連線Oracle資料庫提供相關瞭解。
說明 description
環境
Adobe Experience Manager
問題/症狀
如何從AEM as a Cloud Service連線Oracle資料庫?
解決方法 resolution
從AEM as a Cloud Service連線Oracle資料庫涉及以下內容:
-
在pom中新增Maven相依性
-
要與Oracle資料庫連線的AEM服務
-
OSGi設定
在pom中新增Maven相依性
步驟1: 在您的專案主要內容中包含以下maven相依性 pom.xml
<dependency>
<groupId>com.oracle.database.jdbc</groupId>
<artifactId>ojdbc-bom</artifactId>
<version>21.5.0.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
步驟2: 在中包含以下maven相依性 pom.xml
「核心」和「全部」的URL名稱。
<dependency>
<groupId>com.oracle.database.jdbc</groupId>
<artifactId>ojdbc8</artifactId>
</dependency>
<dependency>
<groupId>com.oracle.database.jdbc</groupId>
<artifactId>ucp</artifactId>
</dependency>
<dependency>
<groupId>com.oracle.database.xml</groupId>
<artifactId>xdb</artifactId>
</dependency>
要與Oracle資料庫連線的AEM服務
從AEM as a Cloud Service連線到資料庫的服務程式碼範例。 它可以包含在路徑{0}中
路徑{0} "專案資料夾"核心"服務
DatabaseService.java
package com.mysite.core.services;
public interface DatabaseService {
}
DatabaseServiceImpl.java
package com.mysite.core.services;
import com.day.commons.datasource.poolservice.DataSourcePool;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Reference;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.sql.DataSource;
import java.sql.Connection;
@Component(
service = DatabaseService.class,
immediate = true
)
public class DatabaseServiceImpl implements DatabaseService {
private final Logger LOGGER = LoggerFactory.getLogger(DatabaseService.class);
@Reference
private DataSourcePool dataSourcePool;
@Activate
public void activate() {
try {
DataSource dataSource = (DataSource) dataSourcePool.getDataSource("oracle");
Connection connection = dataSource.getConnection();
if (connection != null) {
if (!connection.isClosed()) {
LOGGER.info("Connected with connection #4");
connection.close();
}
}
else {
LOGGER.info("Connection is null");
}
} catch (Exception ex) {
LOGGER.error("It was not possible to get the data source: " + ex.getMessage(), ex);
}
}
}
OSGi設定
步驟1: 在本機中前往AEM OSGi設定(http://localhost:4502/system/console/configMgr)。
步驟2: 搜尋「JDBC連線集區」並設定以下與您的資料庫相關的值(如需範例值,請參閱熒幕擷圖)
- JDBC驅動程式類別
- JDBC連線URL
- 使用者名稱和密碼
- 資料來源名稱
步驟3: 請依照以下連結中的步驟操作,並將OSGi設定轉換為 .cfg.json
並根據AEMaaCS標準將其新增到您的專案設定中。
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f