Отправить файл XML как вложение в java

Я хотел отправить файл XML в виде вложения по URL-адресу из класса Java

Код, с которым я пытаюсь, приведен ниже

 File request_XML_file = new File("src/request.xml");      
            URL url = new URL("https://************?p_xml_file="+request_XML_file); 
            conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("POST");
            conn.setRequestProperty("enctype","multipart/form-data"); 

Но значение, переданное для p_xml_file, равно src/request.xml.


person Vishal    schedule 23.06.2015    source источник
comment
В чем на самом деле есть проблема? Вы получаете исключение? Ошибка компиляции или предупреждение? Какая-то другая индикация?   -  person nitind    schedule 23.06.2015
comment
нет исключений, но ответ, который я получу, будет выглядеть так: убедитесь, что ваш XML правильно сформирован и действителен... его URL-адрес веб-службы RESTFul.. поставщик услуг просит отправить параметр только в виде XML-файла   -  person Vishal    schedule 23.06.2015
comment
Основная вещь, которую я хочу, это... отправить файл XML, как будто вложение... в URL   -  person Vishal    schedule 23.06.2015
comment
Попробуй это? stackoverflow.com/a/7557047/2294676   -  person Lydia Ralph    schedule 23.06.2015
comment
@alex спасибо за ссылку .. я использовал тот же код ... теперь дал другой ответ Файл запроса XML, указанный клиентом, не был найден или файл оказался пустым. как я могу назначить этот файл параметру p_xml_file?   -  person Vishal    schedule 23.06.2015


Ответы (3)


Вы также можете рассмотреть новые возможности Java 7

Path path = Paths.get("/tmp/foo/bar.txt"); Files.createDirectories(path.getParent()); try { Files.createFile(path); } catch (FileAlreadyExistsException e) { System.err.println("already exists: " + e.getMessage()); } } }
person Mudassar    schedule 23.06.2015

Пожалуйста, используйте эту ссылку

http://svn.apache.org/viewvc/httpcomponents/oac.hc3x/trunk/src/examples/PostXML.java?view=markup

DefaultHttpClient httpClient = new DefaultHttpClient(); HttpPost postRequest = new HttpPost("http://localhost:8080/TESTINGrestful/rest/polls/comment"); StringEntity input = new StringEntity("<Comment>...</Comment>"); input.setContentType("text/xml"); postRequest.setEntity(input); HttpResponse response = httpClient.execute(postRequest);
person Mudassar    schedule 23.06.2015
comment
Пожалуйста, дайте мне знать, помогло ли это решение, я могу предоставить другую альтернативу. - person Mudassar; 23.06.2015

Через 2 дня поиск получил некоторое применение, и у меня это сработало.. Нет необходимости импортировать какой-либо дополнительный файл Jar.. Если мы хотим отправить файл в виде вложения через URL-адрес веб-службы RESTFul, MultipartUtility правильно, зачем это делать.. Здесь мы идем..!! Готовый код --> http://www.codejava.net/java-se/networking/upload-files-by-sending-multipart-request-programmatically

person Vishal    schedule 24.06.2015