2014-06-30 2 views
1

xml-rpc를 사용하는 다른 webapp에 요청을 보내려고합니다. 지금까지 Groovy의 XML-RPC module을 이미 내 프로젝트에 추가했습니다. 나는 인터넷에서 볼 수있는 예제가 희소하기 때문에 나는 솔직히 말하면서 몹시 밟았다. 나는 내 생각의 라인이 맞다면 빨리 알고 싶다. 그래서 여기에 질문이 있습니다 : 내 요청과 함께 객체를 보내려는 경우groovy xml-rpc 요청 작성기와 같은 것이 있습니까?

  1. , 이것은 내가 here 설명으로 XML 형식으로 객체를 변환해야 의미하는 것이 맞습니까?

  2. # 1의 대답이 예인 경우 # 1에서 해당 형식으로 개체를 변환하는 그루비 한 방법이 있습니까?

내 개체는 XML로 렌더링 될 때이 모양입니다. 그것은 내가 아는 적절한 형식이 아니지만 # 2의 링크에서 설명한대로 변형 할만한 것을 찾고있었습니다. 나를 올바른 길로 인도하는 데 많은 도움을 주시면 감사하겠습니다.

<myObject id="1"> 
    <date>2014-07-01 00:00:00.0 PHT</date> 
    <isCancelled>true</isCancelled> 
    <isPosted>true</isPosted> 
    <isReceived>false</isReceived> 
    <issueTo>some bloke</issueTo> 
    <items> 
     <item id="1" /> 
     <item id="2" /> 
    </items> 
</myObject> 

답변

0

당신이 정말로 원하는 것을 알고 있다면 사용자 지정 XML 생성 기능을 사용하여 자신의 마샬 러를 작성할 수 있습니다.

@Log4j 
class YourCustomMarshaller implements ObjectMarshaller<XML> { 

    @Override 
    boolean supports(Object object) { 
     return object instanceof YourCustomDomain 
    } 

    @Override 
    void marshalObject(Object object, XML converter) throws ConverterException { 
     ... 
    } 
} 

초기화 섹션에 BootStrap.groovy 등록하십시오.

import grails.converters.JSON 
class BootStrap { 

    def init = { servletContext -> 
     ... 
     JSON.registerObjectMarshaller(new YourCustomMarshaller()) 
     ... 
    } 

    def destroy = { 
    } 
} 

또한 플러그인 검색을 시도 할 수 있습니다. 예 : this like https://grails.org/plugins/search?q=rpc

첫 번째 링크는 http://grails.org/plugin/xmlrpc이지만 필요한 것은 무엇인지 확실하지 않습니다.

+0

나는 그것을 사용해 보았지만 운이 없다. 종속성을 다운로드하지 못합니다. 그리고 또한 꽤 오래되었습니다. 마지막 업데이트는 2007 년이었습니다. : ( – user3744677

+0

플러그인 소스를보고 원하는대로 맞으면 패치하고 적용 할 수 있습니다. 나는 그것이 너무 어렵다고 생각하지 않습니다. – wwarlock

관련 문제