2016-08-11 4 views
1

Итак, некоторые из них смущены тем, что именно является требованием. Вот полное описание.
У меня есть 2 машины.
Машина 1 - Сервер: виртуальная машина, на которой размещается Fitnesse.
Машина 2 - локальная машина, где мне нужно получить доступ ко всей информации в проекте java.Как получить доступ к содержимому страницы фитнеса?

Теперь у меня есть 1 тестовая страница с контентом в форме:
| Импорт |
| Светильники |

| AdditionTestPageFixture |
| a | b | doAddition? |
| 1 | 2 | 4 |

в машине сервера. Я обращаюсь к этой странице с моей машины, используя URL-адрес: http://x.x.x.x:xxxx/FrontPage.ArithmeticSuite1.AdditionTestPage

Возвращаясь к моей локальной машине.
У меня есть проект JAVA, созданный там, где мне нужно знать, какой класс используется в этом Fixture, поэтому в основном я хочу прочитать этот контент и извлечь слово «AdditionTestPageFixture».
Я не могу пойти на сервер через шпатлевки и получить доступ к файлам там, это не должно быть сделано. Что бы я ни делал, я должен был делать только через Фитнес. Итак,
1. Я не могу перейти в каталог, в котором страницы хранятся на этом сервере и извлекают контент.
2. Я не могу использовать URLConnetion для отправки HTTP-запросов, потому что ответ является ответом HTML и анализирует, что весь контент будет утомительным.

+0

URL-адрес является локальным узлом. не очень полезно для нас. Как насчет отправки HTTP-запроса? какая форма данных? – elyashiv

+1

Возможный дубликат [Использование java.net.URLConnection для запуска и обработки HTTP-запросов] (http://stackoverflow.com/questions/2793150/using-java-net-urlconnection-to-fire-and-handle-http-requests) – elyashiv

+0

Ваш вопрос на самом деле не ясен для меня? Что именно вы подразумеваете под «данными страницы фитнеса»? Вы пытаетесь получить доступ к источнику страницы wiki (содержание при редактировании страницы)? Откуда вы пытаетесь получить доступ к данным (что вы хотите сделать)? –

ответ

0

Вы можете использовать HttpURLConnection; Пример:

public String getPage(URL url) { 
    try { 
     HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); 

     BufferedReader in = new BufferedReader(new InputStreamReader(urlConnection.getInputStream())); 
     String inputLine; 
     StringBuilder response = new StringBuilder(); 

     while ((inputLine = in.readLine()) != null) { 
      response.append(inputLine); 
     } 
     in.close(); 

     return response.toString(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
} 
+0

Весь ответ - это HTML-контент, а разбор HTML будет утомительным. –

1

В FitNesseRoot вложенной вашей установки FitNesse, вы найдете набор папок, содержащих файлы content.txt. Это страницы FitNesse, и вы можете их прочитать и обработать по мере необходимости.

На удаленной установке FitNesse вы можете отправить HTTP-запрос, который вернет страницу в формате raw wiki, например.

http://remotehost:8090/MyPage?pageData 

Вы можете увидеть полный набор опций для доступа к FitNesse по адресу:

http://fitnesse.org/FitNesse.UserGuide.AdministeringFitNesse.RestfulServices

+0

Невозможно это сделать. Fitnesse развертывается на некоторых серверах. Проверьте изменения. По-видимому, я был неясно с требованием раньше. –

+0

См. Обновленный ответ. –

+0

Да, я думаю, это ближе всего к тому, чего я могу достичь. –