2015-02-04 4 views
0

предполагается подключение к базе данных PhpMyAdmin на EasyPHP сервере вставить запись в базе данных пользователей, и все это проходит через веб-сервисы через GlassFish сервер, но это не происходитGlassFish не срабатывают с базой данных

NetBeans говорит, что GlassFish работает, потому что у него есть только возможность, чтобы остановить, удалить или перезагрузить сервер, но параметр «Start» неактивна

package Java; 

import javax.jws.WebService; 
import java.sql.ResultSet; 
import java.sql.Statement; 
import java.sql.Connection; 
import java.sql.PreparedStatement; 
import java.sql.DriverManager; 
/** 
* 
* @author Laplet Repair 
*/ 
@WebService(serviceName = "AddUser") 

public class AddUser { 
    private Statement statement = null; 
    private PreparedStatement preparedStatement = null; 
    private ResultSet resultSet = null; 
    private Connection connect = null; 

    public void readDataBase() throws Exception { 
    try { 
     // This will load the MySQL driver, each DB has its own driver 
     Class.forName("com.mysql.jdbc.Driver"); 
     // Setup the connection with the DB 
     connect = DriverManager 
      .getConnection("jdbc:mysql://localhost:3306/conquest_of_the_fates_user?zeroDateTimeBehavior=convertToNull" 
       + "user=root&password="); 

     // Statements allow to issue SQL queries to the database 
     statement = connect.createStatement(); 

     // PreparedStatements can use variables and are more efficient 
     preparedStatement = connect 
      .prepareStatement("insert into feedback.comments values (default, ?, ?, ?)"); 
     // "myuser, webpage, datum, summery, COMMENTS from feedback.comments"); 
     // Parameters start with 1 
     preparedStatement.setString(1, "username"); 
     preparedStatement.setInt(2, 5); 
     preparedStatement.setString(3, "password"); 
     preparedStatement.executeUpdate(); 

     resultSet = statement 
     .executeQuery("select * from feedback.comments");  
    } catch (Exception e) { 
     throw e; 
    } finally { 
     close(); 
    } 

    } 

    // You need to close the resultSet 
    private void close() { 
    try { 
     if (resultSet != null) { 
     resultSet.close(); 
     } 

     if (statement != null) { 
     statement.close(); 
     } 

     if (connect != null) { 
     connect.close(); 
     } 
    } catch (Exception e) { 

    } 
    } 
} 

это журнал ошибок

java.l ang.RuntimeException: java.io.IOException на com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource (AdminAdapter.java:266) в org.glassfish.grizzly.http.server.StaticHttpHandlerBase.service (StaticHttpHandlerBase. Java: 189) в com.sun.enterprise.v3.services.impl.ContainerMapper $ HttpHandlerCallable.call (ContainerMapper.java:459) на com.sun.enterprise.v3.services.impl.ContainerMapper.service (ContainerMapper.java:167) на org.glassfish.grizzly.http.server.HttpHandler.runService (HttpHandler.java:201) в org.glassfish.grizzly.http.server.HttpHandler.doHandle (HttpHandler.java: 175) по адресу: org.glassfish.grizzly.http.server.HttpServerFilter.handleRead (HttpServerFilter.java:235) на org.glassfish.grizzly.filterchain.ExecutorResolver $ 9.execute (ExecutorResolver.java:119) в org.glassfish. grizzly.filterchain.DefaultFilterChain.executeFilter (DefaultFilterChain.java:284) на org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart (DefaultFilterChain.java:201) на org.glassfish.grizzly.filterchain.DefaultFilterChain.execute (DefaultFilterChain.java:133) at org.glassfish.grizzly.filterchain.DefaultFilterChain.process (DefaultFilterChain.java:112) at org.glassfish.grizzly.ProcessorE xecutor.execute (ProcessorExecutor.java:77) на org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent (TCPNIOTransport.java:561) на org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent (AbstractIOStrategy. Java: 112) на org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0 (WorkerThreadIOStrategy.java:117) на org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access $ 100 (WorkerThreadIOStrategy.java:56) в org.glassfish.grizzly.strategies.WorkerThreadIOStrategy $ WorkerThreadRunnable.run (WorkerThreadIOStrategy.java:137) at org.glassfish.grizzly.threadpool.AbstractThreadPool $ Worker. doWork (AbstractThreadPool.java:565) at org.glassfish.grizzly.threadpool.AbstractThreadPool $ Worker.run (AbstractThreadPool.Java: 545)

ответ

0

Вы должны настроить на GlassFish администратора консоли в "Ресурс JDBC" + "пул соединений JDBC" к базе данных MySQL How to setup a JDBC connection in Glassfish

Вам может понадобиться развернуть JDBC библиотеки реализации MySQL в: GlassFish-установки-путь \ домены \ имя домена \ Lib

И создать EJB Singleton для получения соединений:

@Singleton 
@LocalBean 
public class DBConnections { 

    @Resource(lookup = "resource JNDI name") 
    private DataSource dataSource; 

    public Connection getConnection() throws SQLException { 
     return dataSource.getConnection(); 
    } 
}