2017-05-16 9 views
0

저는 Xubuntu 16.04를 호스트 컴퓨터로 사용하고 VirtualBox에서 Windows 7을 실행하고 있습니다. Windows 컴퓨터에서 개발자 버전 Adobe InDesign 2014 서버 있습니다. 생성 된 파일 (InDesign WSDL 용 Java 클래스)과 축 1.4를 사용하여 간단한 테스트 스크립트를 호출하지만 다음 오류가 발생합니다. Server.userException : 거기에DOM 예외 WRONG_DOCUMENT_ERR : Adobe Indesign에 비누 요청을 보낼 때

Caused by: org.w3c.dom.DOMException: WRONG_DOCUMENT_ERR: A node is used in a different document than the one that created it. 
at org.apache.axis.AxisFault.makeFault(AxisFault.java:101) 
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:701) 
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435) 
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62) 
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) 
at org.apache.axis.client.Call.invokeEngine(Call.java:2784) 
at org.apache.axis.client.Call.invoke(Call.java:2767) 
at org.apache.axis.client.Call.invoke(Call.java:2443) 
at org.apache.axis.client.Call.invoke(Call.java:2366) 
at org.apache.axis.client.Call.invoke(Call.java:1812) 
at localhost.Service_wsdl.ServiceStub.runScript(ServiceStub.java:305) 

디버깅 깊은 나는 또한 오류 AxisFault faultCode를 찾을 수 있습니다. 내가 Xubuntu 14.04를 사용하기 전에 VBox의 이전 버전을 추측하기에 모든 상황이 좋았 기 때문에 모든 상황이 이상합니다. 나는 이걸로 2 달 동안 붙어있다. 나는 이전 시스템과 현재의 차이점을 알 수 없다.

IDS가 실행 중이며 작동 중인지 확인하기위한 간단한 테스트가 있습니다. 다음 JavaScript 코드를 사용하여 Java에서 Ping 테스트를 호출합니다.

var scriptName = "BmpPing"; 
var scriptSource = app.scriptArgs.getValue('test'); 
app.consoleout('---------------------------'); 
app.consoleout(scriptName + " invoked: " + scriptSource); 
var bmp = new File (app.activeScript.parent.fsName + '/bmp.jsx'); 
$.evalFile(bmp); 
bmp_timediff.setStartTime(); 
bmp_log.debug(scriptName + " started on \"" + scriptSource + "\"..."); 
result = bmp_json.stringify({"PING": "PONG"}); 
bmp_log.info("BmpPing finished with result: '" + result + "' in: " + 
(bmp_timediff.getDiff()/1000) + " bmp seconds"); 
bmp_log.debug('============================'); 
result; 
+0

같은 다른 UI에서 비누 호출을 만들려고? –

+0

아무것도하지 않고 DOM이나 문서를 전혀 참조하지 않는 매우 간단한 InDesign 스크립트를 호출 해보십시오. 비누 호출 –

+0

을 업데이트하고 테스트 js를 삽입했습니다. 나는 당신이 방금 말한 것에 대한 요구 사항을 충족시키는 지 확신하지 못합니다. @NicolaiKaint – YoloZsolo

답변

0

핑 스크립트는 그렇게 간단하지 않습니다. 여러 가지 일이 발생할 수 있습니다. InDesign Server가 먼저 작동하는지 확인하십시오.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap="http://ns.adobe.com/InDesign/soap/"><soapenv:Body> 
          <soap:RunScript> 
          <runScriptParameters> 
          <scriptLanguage>javascript</scriptLanguage> 
          <scriptFile>C:/InDesign/test.jsx</scriptFile> 
          </runScriptParameters> 
          </soap:RunScript> 
          </soapenv:Body> 
</soapenv:Envelope> 

및 응답이 있어야한다 :

main(); 
function main() { 
    return ("success"); 
    // or return 1; 
} 

비누 요청이 같은해야한다 :

이 스크립트 JS 시도

<?xml version="1.0" encoding="UTF-8"?> 
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:IDSP="http://ns.adobe.com/InDesign/soap/"> 
    <SOAP-ENV:Body> 
     <IDSP:RunScriptResponse> 
      <errorNumber>0</errorNumber> 
      <scriptResult> 
       <data xsi:type="xsd:string">success</data> 
      </scriptResult> 
     </IDSP:RunScriptResponse> 
    </SOAP-ENV:Body> 
</SOAP-ENV:Envelope> 

당신은 그것을 할 수없는 경우 - 서버 설정을 살펴 봐야합니다. 만약 당신이 그것을 가지고 - 한 번에 하나씩 스크립트 라인을 추가하고 예외를 던져 볼 수 있습니다. 이 올바른지, 그렇지 인디자인 클라이언트 인디자인 서버를 실행 -

또한, 그냥 시작하는 SOAPUI 또는 우편 배달부