typedef typename Tail::inUnion dummy;
Однако я не уверен, что реализация inUnion верна. Если я правильно понимаю, этот класс не должен быть создан, поэтому вкладка «fail» никогда не будет автоматически терпеть неудачу. Возможно, было бы лучше указать, находится ли тип в объединении или нет с простым булевым значением.
template
struct Contains; template struct Contains > { enum { result = Contains ::result }; }; template struct Contains > { enum { result = true }; }; template struct Contains { enum { result = false }; }; PS: Посмотрите на Boost :: Variant
PS2: посмотрите на typelists , особенно в книге Андрея Александреску: Modern C ++ Design
Не уверенный, если это стоит чего-нибудь, но у меня была подобная проблема, где я добирался "java.sql. SQLException: Никакой подходящий драйвер не нашел" ошибку. Я нашел этот поток при исследовании решения.
способ, которым я закончил тем, что решил свою проблему, состоял в том, чтобы воздержаться от использования java.sql. DriverManager для получения соединения и вместо этого создал экземпляр org.hsqldb.jdbc.jdbcDataSource и использовал это.
первопричина моей проблемы (я верю) имела отношение к classloader иерархии и тому, что JRE выполнял Java 5. Даже при том, что я мог успешно загрузить jdbcDriver класс, classloader позади java.sql. DriverManager был выше, до такой степени, что он не мог видеть hsqldb.jar, в котором я нуждался.
Так или иначе, просто поместив это примечание здесь в случае, если кто-то еще спотыкается с подобной проблемой.
Я думаю, что Ваш URL HSQL является неправильным. Это должно также включать имя базы данных,
так что-то как
jdbc:hsqldb:hsql://localhost/mydatabase
, если mydatabase является названием Вашего DB (файл). Не включая это может (я не быть уверенным, имеет ли это место здесь), путают парсинг URL, который может привести к DriverManagerDS, думая, что Ваш драйвер не подходит (это найдено, но это думает, что это не хорошее)
Могло бы случиться так, что
hsql://localhost
не может быть разрешен в файл. Посмотрите на пример программы здесь:
HSQLDB Видит, можно ли получить ту работу сначала, и затем видеть, можно ли взять ту конфигурационную информацию и использовать ее в бобовой конфигурации Spring.
Удачи!
Можно ли импортировать драйвер (org.hsqldb.jdbcDriver) в один из исходных файлов? (Для тестирования этого, класс находится на самом деле на пути к классу).
, Если Вы не можете импортировать его затем, Вы могли бы попробовать включая hsqldb.jar в Вашем пути сборки.
Похоже, что Вы не указываете имя базы данных для соединения с, должен пойти что-то как
jdbc:hsqldb:hsql://serverName:port/DBname
Если Вы смотрите на свою строку первоначального соединения:
<property name="url" value="jdbc:hsqldb:hsql://localhost"/>
Сверхзвуковые документы предполагают пропавших без вести псевдонима после localhost:
"никакой подходящий драйвер" обычно не означает, что синтаксис для URL соединения является неправильным.
Хорошо, таким образом, вот решение. Большинство все сделали действительно правильные замечания, но ни один не решил проблему (СПАСИБО ЗА справку). Вот решение, которое я нашел для работы.
Мое предположение - то, что это имело некоторое отношение, как Ganymede читает банки в/web-inf/lib папка. Но кто знает... Это работает теперь.
У меня была та же проблема с пружиной, свободным-городским-населением-dbcp и оракулом 10 г. Используя этот URL я не получил 'подходящий драйвер' ошибка: jdbc:oracle:thin@192.168.170.117:1521:kinangop
вышеупомянутый URL пропускает полное двоеточие незадолго до. После исправления этого исчезла ошибка.
Чтобы HSQLDB регистрировался, вам необходимо получить доступ к его классу jdbcDriver. Вы можете сделать это так же, как в примере .
Class.forName("org.hsqldb.jdbcDriver");
Запускает статическую инициализацию класса jdbcDriver:
static {
try {
DriverManager.registerDriver(new jdbcDriver());
} catch (Exception e) {}
}