Taverna

Taverna에서 대용량 데이터 다루기 - 간단한 웹 서비스

hongiiv 2007. 8. 31. 14:23
반응형
Biopipe 경진대회 문제를 풀면서 8,000여개의 multiple 서열을 sort하는 beanshell 스크립트를 만들었는데, 로컬에서 돌아가다 보니 좀 시간이 걸렸다. 간단하게 웹 서비스를 만들어서 휘리릭 배포해서 쓰고 싶어졌다. Axis와 JWS를 이용해서 간단하게 해결하자.

우선 Tomcat에 Axis를 설치한다. Axis를 다운로드 받아서 common/lib에 라이브러리들 옮기고 webapps/axis 디렉토리를 Tomcat의 webapps에 옮긴 다음 http://hostname:8080/axis 로 가면 첫화면에서 validation을 선택하여 필요한 라이브러리를 체크하고 없다면 추가해준다. 이때 라이브러리는 java의 lib/ext 디렉토리에 해당 라이브러리를 옮겨주면 끝.

이제 필요한 java 클래스를 만들고 확장자를 .jws로 한 후 Tomcat의 webapps/axis에 넣어준 후 웹브라우저로 접속해 보면 끝.

다음과 같이 test.jws 파일을 만들고 webapps/axis에 넣어준다.

public class test {
        public String testMethod(String testString) {
                return "Hello " + testString;
        }
}

웹 브라우저에 http://hostname:8080/axis/test.jws로 접속하면

jws1

Click to see the WSDL을 클릭하면 wsdl 파일을 볼 수 있다.

jws2

이제 Taverna에서 호출한 결과는 다음과 같다.

jws3

jws4

이상으로 axis와 jws를 통해서 초간단 웹 서비스를 생성하고 이를 Beanshell 대신 사용한다면 재사용 측면이나 높은 서버의 성능을 사용한다는 여러가지 장점을 얻을 수 있겠다.

반응형