cxf + bboss 가 발표 한 웹 서비스 부족 과 태그 문 제 를 해결 합 니 다.

3722 단어 bbossaopquickstart
cxf + bboss 웹 서비스 발표 (cxf + bboss 웹 서비스 발표 방법 참고 문서:
[url=http://bbossgroups.group.iteye.com/group/wiki/3091-webservice-bboss-aop] bbossgroups 웹 서비스 엔진 사용 방법 [/ url], 서비스 발표 에 성 공 했 습 니 다. wsdl 파일 을 볼 때 라벨 이 부족 합 니 다. 예 를 들 어:
   
-

-

-

-


-




-
-





认真看发布后的wsdl文件,发现多了标签:
 

탭 에 있 는 location 을 꺼 내 브 라 우 저 에서 열 면 '잃 어 버 린' 탭 두 개가 있 습 니 다. 이 때 는 잃 어 버 린 것 이 아니 라 탭 에 포함 되 어 있 음 을 알 수 있 습 니 다.
왜 태그 에 포함 되 어 있 습 니까?생 성 된 wdl 을 자세히 살 펴 보면 탭 에 있 는 targetNamespace 속성 과 중 namespace 속성의 값 이 다 르 기 때 문 입 니 다. 서 비 스 를 발표 할 때 인터페이스 류 와 서비스 실현 류 의 @ Webservice 주석 에 targetNamespace 를 이름 으로 지정 하지 않 았 거나 지정 하지 않 았 을 때 입 니 다.(cxf 가 서 비 스 를 발표 할 때 클래스 와 인터페이스의 패키지 경 로 를 기본적으로 반전 시 킨 다음 targetNamespace 의 값 으로 합 니 다) 이러한 현상 을 초래 하고 최종 해결 방안 은 다음 과 같 습 니 다.
1. 인터페이스 류 와 실현 류 를 같은 가방 에 넣 으 면 문 제 를 해결 할 수 있다.
2. 인터페이스 클래스 와 구현 클래스 의 주석 에 네 임 스페이스 속성 설정 을 추가 합 니 다. @ WebService (targetNamespace = "XXXX") 두 설정 값 을 일치 시 키 면 됩 니 다.
구현 클래스:
package org.frameworkset.web.ws;

import javax.jws.WebService;

/**
*

Title: WSServiceImpl.java


*

Description:


*

bboss workgroup


*

Copyright (c) 2008


* @Date 2011-4-24
* @author biaoping.yin
* @version 1.0
*/
@WebService(targetNamespace="org.frameworkset.web.ws")
public class WSServiceImpl implements WSService{

public String sayHello(String duoduo) {

if(duoduo == null)
return "";
else
return duoduo;
}

}

인터페이스 정의:
package org.frameworkset.web.ws;

import javax.jws.WebService;

/**
*

Title: WSService.java


*

Description:


*

bboss workgroup


*

Copyright (c) 2008


* @Date 2011-4-24
* @author biaoping.yin
* @version 1.0
*/
@WebService(targetNamespace="org.frameworkset.web.ws")
public interface WSService {

public String sayHello(String duoduo)
;

}

좋은 웹페이지 즐겨찾기