我需要你的幫助......它讓我瘋狂,我嘗試在websphere liberty 16.0.0.2服務器上部署一個非常簡單的應用程序。我的第一個大問題,其餘的API不能被稱爲。獲取錯誤:未找到任何根資源匹配請求路徑/admin-web-1.0-SNAPSHOT/api/account,相對路徑:/ api/account。JavaEE Websphere Liberty沒有根資源匹配請求&沒有有效的jdbcDriver
驗證碼: AppREST
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
import java.util.HashSet;
import java.util.Set;
@ApplicationPath("api")
public class AppREST extends Application {
public Set<Class<?>> getClasses() {
Set<Class<?>> resources = new HashSet<Class<?>>();
resources.add(AccountREST.class);
resources.add(GroupREST.class);
return resources;
}
}
AccountREST
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.inject.Inject;
import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;
import java.util.List;
@ManagedBean
@RequestScoped
@Path("/account")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public class AccountREST {
@Inject
private AccountFacade accountFacade;
@POST
public void createAccount(AccountRequest accountRequest){
}
@GET
public List<AccountRequest> getAccountRequests() {
return accountFacade.getAccountRequests();
}
GroupREST幾乎是相同的,以AccountREST。 的web.xml文件是:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<module-name>admin-web</module-name>
<display-name>Eportal Registration Admin</display-name>
</web-app>
的POM文件包括此依賴關係:
<dependencies>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>eportal.registration.admin</groupId>
<artifactId>admin-models</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>eportal.registration.admin</groupId>
<artifactId>admin-usecases</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>eportal.registration.admin</groupId>
<artifactId>admin-models</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>eportal.registration.admin</groupId>
<artifactId>admin-repositories</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
我真的不能看到的錯誤,我幾乎過去將它複製從一個工作項目:(
現在。第二個問題的JDBC驅動器I下載了從行家中央MySQL的連接器的Java-6.0.3.jar並把它添加到server.xml:
<?xml version="1.0" encoding="UTF-8"?>
<server description="new server">
<!-- Enable features -->
<featureManager>
<feature>javaee-7.0</feature>
</featureManager>
<httpEndpoint id="defaultHttpEndpoint"
httpPort="9080" />
<applicationManager autoExpand="true"/>
<dataSource id="RegistrationAdminDB" jndiName="jdbc/RegistrationAdminDB">
<jdbcDriver libraryRef="MySQLLib"/>
<properties databaseName="REGISTRATIONADMINDB" serverName="localhost" portNumber="3306"/>
</dataSource>
<library id="MySQLLib">
<fileset dir="/opt/ibm/wlp/clients/mysql-connector-java-6.0.3.jar"/>
</library>
</server>
獲取錯誤
java.lang.RuntimeException: java.sql.SQLNonTransientException: DSRA4000E: A valid JDBC driver implementation class was not found for the jdbcDriver dataSource[RegistrationAdminDB]/jdbcDriver[default-0] using the library MySQLLib. []
at com.ibm.ws.resource.internal.ResourceFactoryTrackerData$1.getService(ResourceFactoryTrackerData.java:113)
在啓動時。
嗯,我無法找到的錯誤,但不幸的沒有什麼工作:( 感謝您的幫助!
嘿,謝謝,經驗教訓 - 12小時後不調試配置工作xD我將我的應用程序部署到模板文件夾中 - 代碼完全沒問題,只是沒有更新。最新的mysql連接器6.x.x似乎沒有工作 - 更改我的配置和降級連接器後,它的工作。 Ty –
哈哈,我們都一直在那裏;)很高興它的工作 – Pete