Вам нужно будет отформатировать строку после чтения имени таблицы, например:
static String queryCreateTable = "CREATE TABLE {0}" +
"(ID INTEGER not NULL ," +
"BRAND VARCHAR(40)," +
"MODEL VARCHAR(40)," +
"YEAR INTEGER not NULL," +
"NOVELTY BINARY," +
"PRIMARY KEY ( ID ))";
, а затем создать как:
newNameOfTable = JOptionPane.showInputDialog("Connected for saving data. " +
"Input name of new table:");
statement = connection.createStatement();
statement.execute(MessageFormat.format(queryCreateTable, newNameOfTable));
У апплетов будет сложная работа на стороне сервера. Они предназначены для работы внутри контейнера, такого как веб-браузер. Исключение получается наиболее вероятно, потому что апплет пытается нарисовать его GUI - и сервер не поддерживает эту поддержку. Я удивлен, что он работал в JDK 1.4 - я не знаю, что изменилось между двумя версиями, которые повлияли бы на это.
Возможно, вы используете что-то в своем Java-коде, который не может работать в безголовой системе, такой как графические компоненты (объекты Swing, изображения и т. д.). Некоторые из этих компонентов, вместо того, чтобы напрямую обрабатывать Java, обрабатываются базовой платформой (само ядро Windows или сервером X-Window в Unix). Таким образом, повышается общая производительность приложения.
Итак, вопрос в том, хорошо, если он работал на Java 1.4, почему он не работает на 1,5? Моя ставка, учитывая повышение производительности, поскольку Java 1.2, которую Swing получила с течением времени, заключается в том, что Sun переместила управление некоторыми графическими объектами на уровень ОС для повышения производительности. Поэтому, если вы не можете придерживаться 1.4, тогда вы должны пересмотреть свой код.
Эта хорошая статья поможет вам понять, как изменить ваше приложение, чтобы сделать его безголовым.
-Djava.awt.headless=false
добавить выше в ваш сценарий запуска Tomcat. он будет работать на 100%
java.lang.InternalError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
Любые предложения по этому поводу?
– Sabarish
28 November 2013 в 14:06
Возможно, вам также придется установить библиотеки x11 или хотя бы явно экспортировать путь к ним.
/ usr / X11R6 / lib
Нечетно .. вы пытаетесь запустить апплет (предположим, вы говорите о подклассе java.awt.Applet) внутри tomcat? Как правило, это не сработает, потому что нет отображения на дисплее апплета.
Предполагая, что вы не хотите, чтобы апплет отображался в любом месте, и вы просто хотите выполнить часть его программно, вы можете которые можно получить с помощью виртуального X-сервера, такого как Xvfb или Xvnc. После запуска Xvfb или Xvnc на вашем хосте, работающем с tomcat, вы можете попробовать установить DISPLAY внутри сценариев запуска tomcat, чтобы использовать отображение виртуального X-сервера.