Java Web Services API이지만 내 서버에서 JVM을 실행할 수 없습니다.
-
09-06-2019 - |
문제
PlanPlusOnline 계정의 일부 데이터를 사용하려고 합니다.Java 웹 서비스 API만 제공합니다.데이터가 사용될 사이트의 서버에서 Tomcat 설치를 허용하지 않습니다(편집:또는 해당 문제에 대한 JVM).저는 거짓말을 하지 않겠습니다. 저는 Java 소프트웨어 엔지니어이고 부업으로 웹 작업을 하고 있습니다.저는 웹 서비스나 서블릿에 익숙하지 않지만 기꺼이 시도해 보고 싶었습니다.차라리 그들이 데이터에 대한 JSON 액세스 권한을 갖고 싶지만, 내가 아는 한 그들은 그렇지 않습니다.어떤 아이디어가 있나요?
편집하다:명확히하기 위해.planplusonline에서 제공하는 웹 서비스는 Java 기반입니다.Java를 사용하지 않고 이 웹 서비스의 데이터에 액세스하려고 합니다.지금은 이것이 가능하다고 생각하지만 더 많은 연구가 필요합니다.나를 올바른 방향으로 안내하는 데 도움을 줄 수 있는 사람은 누구든지 감사하겠습니다.
해결책
jodonnell의 의견에 따라 웹 서비스 연결은 거의 모든 서버측 언어로 이루어질 수 있습니다.단지 PlanPlusOnline이 Java로 작성되었기 때문에 그들이 제공한 API 예제가 Java로 작성되었을 뿐입니다.서비스에 대한 URL과 액세스 키가 있는 경우 실제로 해야 할 일은 반환된 XML을 탐색하는 방법을 알아내는 것뿐입니다.Java를 사용할 수 없다면 PHP가 이미 설치되어 있고 적절한 모듈이 로드되어 있을 수 있으므로 PHP를 권장합니다.다음 링크가 도움이 될 수 있습니다.
http://www.onlamp.com/pub/a/php/2007/07/26/php-web-services.html
다른 팁
귀하의 질문을 올바르게 이해하고 있다면 기존 웹 서비스에 연결하기만 하면 되며 자체 웹 서비스를 생성할 필요는 없습니다.만약 그런 경우이고 제가 뭔가 놓치고 있는 것이 있을 수 있다면 Tomcat이 전혀 필요하지 않을 것이라고 생각합니다.Netbeans를 사용하는 경우 새 데스크톱 또는 웹 애플리케이션을 만든 다음 프로젝트 이름을 마우스 오른쪽 버튼으로 클릭할 수 있습니다.새로 만들기를 선택한 다음 기타를 선택하고 웹 클라이언트를 선택합니다.WSDL(일반적으로 URL)을 찾을 수 있는 위치에 대한 정보와 기타 필수 정보를 입력합니다.
WebClient를 추가한 후에는 실제로 웹 서비스를 호출하는 새 클래스를 만듭니다.웹 서비스 이름이 PlanPlusOnline인 경우 다음과 같을 수 있습니다.
public final class PlanPlusOnlineClient
{
//instance to this class so that we do not have to reinstantiate it every time
private static PlanPlusOnlineClient _instance = new PlanPlusOnlineClient();
//generated class by netbeans with information about the web service
private PlanPlusOnlineService service = null;
//another generated class by netbeans but this is a property of the service
//that contains information about the individual methods available.
private PlanPlusOnline port = null;
private PlanPlusOnlineClient()
{
try
{
service = new PlanPlusOnlineService();
port = service.getPlanPlusOnlinePort();
}
catch (MalformedURLException ex)
{
MessageLog.error(this, ex.getClass().getName(), ex);
}
}
public static PlanPlusOnlineClient getInstance()
{
return _instance;
}
public static String getSomethingInteresting(String param)
{
//this will call one of the actual methods the web
//service provides.
return port.getSomethingIntersting(param);
}
}
이것이 당신의 길을 따라가는 데 도움이 되기를 바랍니다.당신은 또한 확인해야합니다 http://www.netbeans.org/kb/60/websvc/Netbeans 및 웹 서비스에 대한 추가 정보를 보려면다른 IDE에서도 비슷할 것이라고 확신합니다.