Problème de connexion à une base Oracle
Bonjour,
j'ai mon login.xhtml, où l'utilisateur rentre les paramètres pour se connecter à Oracle, qui les envoies par la suite à la classeBean ManagedBeanO.java ( qui contient une méthode pour se connecter à Oracle), j'appelle cette méthode dans le welcome.xhtml pour voir si je me suis connecté ou pas
Mais j'ai comme erreur
Code:
1 2
| javax.servlet.ServletException: Driver-Not-Exist-004
javax.faces.webapp.FacesServlet.service(FacesServlet.java:321) |
Login.xhtml
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| <html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<ui:composition template="/WEB-INF/templates/BasicTemplate.xhtml">
<ui:define name="content">
<h:form>
<h:panelGrid columns="2">
<h:outputText value="Host"></h:outputText>
<h:inputText value="#{ManagedBeanO.host}"></h:inputText>
<h:outputText value="Port"></h:outputText>
<h:inputText value="#{ManagedBeanO.port}"></h:inputText>
<h:outputText value="User"></h:outputText>
<h:inputText value="#{ManagedBeanO.user}"></h:inputText>
<h:outputText value="Password"></h:outputText>
<h:inputSecret value="#{ManagedBeanO.mdp}"></h:inputSecret>
<h:outputText value="Base Name"></h:outputText>
<h:inputText value="#{ManagedBeanO.baseName}"></h:inputText>
</h:panelGrid>
<h:commandButton value="Connect" action="Connect"></h:commandButton>
</h:form>
</ui:define>
</ui:composition>
</html> |
ManagedBeanO.java
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
|
public class ManagedBeanO {
private String valeur;
private Connection connectedUser;
private String host;
private String port;
private String baseName, user, mdp, driver, url;
private Connection connection=null;
private final static Logger logger = Logger.getLogger(ManagedBeanO.class.getName());
public String getHost() {
return host;
}
public void setHost(String host) {
this.host = host;
}
public String getPort() {
return port;
}
public void setPort(String port) {
this.port = port;
}
public String getBaseName() {
return baseName;
}
public void setBaseName(String baseName) {
this.baseName = baseName;
}
public String getUser() {
return user;
}
public void setUser(String user) {
this.user = user;
}
public String getMdp() {
return mdp;
}
public void setMdp(String mdp) {
this.mdp = mdp;
}
public String getDriver() {
return driver;
}
public void setDriver(String driver) {
this.driver = driver;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public Connection getConnection() {
return connection;
}
public void setConnection(Connection connection) {
this.connection = connection;
}
public String getValeur() {
return this.valeur;
}
public void setValeur(String valeur) {
this.valeur= valeur;
}
public Connection getConnectedUser() throws TechnicalException {
if(connectedUser == null) {
connectedUser = getConnection(host,port,baseName,user,mdp );
}
return connectedUser ;
}
public void setConnectedUser(Connection connectedUser) {
this.connectedUser = connectedUser;
}
/**
* Gets connection
* @param host host
* @param port port number
* @param baseName base name
* @param user user name
* @param password password
* @return connection
* @throws TechnicalException
*/
private Connection getConnection(String host, String port, String baseName, String user, String password) throws TechnicalException {
// Driver Oracle
driver = "oracle.jdbc.driver.OracleDriver";
// URL de la connexion
url = "jdbc:oracle:thin:@"+host+":"+port+":"+baseName;
try {
Class.forName(driver);
// On obtient la connexion
connection = DriverManager.getConnection(url, user, password);
logger.info("Connection obtenue");
// On retourne la connexion
return connection;
} catch (SQLException e) {
logger.warning("Incorrect Connection Data.");
throw new TechnicalException("No-Connexion-Established-003");
}
catch (ClassNotFoundException e) {
// logger).fatal("Inexistent or Incorrect Driver.");
throw new TechnicalException("Driver-Not-Exist-004");
}
}
} |
welcome.xhtml
Code:
1 2 3 4 5 6 7 8 9 10 11
| <html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<ui:composition template="/WEB-INF/templates/BasicTemplate.xhtml">
<ui:define name="content">
<h:outputLabel value="Welcome #{ManagedBeanO.connectedUser}"></h:outputLabel>
</ui:define>
</ui:composition>
</html> |