2013-10-08 4 views
1

Hy guys,Использование внешней банки. Не найдено подходящих драйверов для jdbc: sqlserver

Я столкнулся с проблемой «commom» с драйвером sql. Но не знаю, как решить. alredy пытался исправить почти все решения.

окружающее является:

-principal JAR: Это содержит все логин и доступ к БД через Hibernate

-WebService WAR: Это имеет 2 строки кода и вызывать только принципала Jar

-Jboss: запуск WebService на Jboss AS 7.1

моей проблемы:

После запуска сервера, когда я вызываю метод подмигнули I Получать следующую ошибку:

20:39:20,948 WARN [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] (http-localhost-127.0.0.1-8080-1) SQL Error: 0, SQLState: 08001 
20:39:20,949 ERROR [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] (http-localhost-127.0.0.1-8080-1) No suitable driver found for jdbc:sqlserver://localhost;databaseName=SIPAAM; 

Мой JAR также имеет тестовый класс, и если я выполнить этот класс все работает отлично. Он получает доступ к БД и получает все проблемы с данными. Но когда я ссылаюсь на него в своем WebService, он дает эту ошибку. Кроме того, мой Постоянство XML (находится на проекте .JAR)

enter image description here


Дополнительная информация:

Мой WebService код:

@WebMethod 
    public List<DadosPreProcessamento> getDadosPreProcessamento() 
    { 
     DadosPreProcessamentoController dadosPreProcessamentoController = DadosPreProcessamentoController.getInstance(); 
     return dadosPreProcessamentoController.getLista_dadosPreProcessamento(); 
    } 

Мои Запрос на спящий режим (JAR внутренний):

Query listQuery = em.createQuery("select object(c) from " 
        + entityClassName + " as c"); 
return listQuery.getResultList(); 

Ошибка возникает на методе getResultList().


Я настроек уже пытался добавить библиотеку sqljdbc4 на моем WS проекта, как вы можете видеть на картинке ниже:

WS Libs Config

WS Deploy config

ответ

0

РЕШЕННЫЙ!

Добавлен SQL баночка в:

~ \ jboss7 \ Modules \ орг \ зимуют \ главный

И

Эта строка в нижней части тега в module.xml на «главная» папка выше.

<resource-root path="sqljdbc4.jar"/> 
0

Вы должны также добавить sqljdbc .jar в ваш путь к классам. Вы можете убедиться, что драйвер находится в банке, нажав на Java Resources в вашем проводнике пакетов и найдя класс внутри пакета.

+0

Это alredy там. Если я открою свой основной .JAR с проводником пакетов, он отобразит sqljdbc4 в папке lib (внутри банки). У меня также есть sqljdbc4 в папке lib в проекте WebService. (alredy попробовал его и ничего не изменил) –

+0

Вам нужно ОБА sqljdbc.jar и sqljdbc4.jar. – bh5k

+0

Если вы посмотрите на загрузку с Microsoft, если содержатся оба файла jar: http://www.microsoft.com/en-us/download/details.aspx?id=11774 – bh5k

0

Проверьте значение поля Class-Path в файле manifest.mf, содержащемся в вашей библиотеке JAR; если он не заявляет, что он содержит sqljdbc.jar, эта зависимость не будет доступна извне JAR.

Вы также можете немного поэкспериментировать: распакуйте JAR, удалите поле Class-Path из манифеста и переупаковки; приложение будет проверять контент силой, поэтому оно должно работать.

Смежные вопросы