Я пишу приложение, которое будет мигрировать пакеты JBoss Guvnor, используя его REST API. По сути, он читает все активы через запросы REST GET и записывает их в другой Guvnor, используя запросы PUT / POST.
Вот небольшой фрагмент моего метода, который выполняет POST:
HttpURLConnection conn = (HttpURLConnection) path.getURL()
.openConnection();
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-type", path.getType().getAcceptMIME());
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setRequestProperty("Authorization", "Basic " + authString);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
conn.getOutputStream()));
bw.write(content);
bw.flush();
conn.connect();
Работает, все ресурсы переносятся, но каждый раз, когда conn.getResponseCode()
возвращает 500, а conn.getResponseMessage()
возвращает внутреннюю ошибку сервера.
Я довольно новичок в работе HTTP-запросов с Java, и я не знаю, должно ли это происходить, почему это происходит и происходит ли это из-за какой-то ошибки в моем фрагменте или на стороне сервера (Guvnors) ошибка?