2013-12-20 11 views
-1

나는이 줄에서 시작, 자바 스크립트 문자열에서 노드로 변환하는 것으로 확인 솔루션을 사용하기 위해 노력하고있어은 모두 javax를 사용하지 않고 String으로 DOM 노드를 변환 할 수 있습니다. * 클래스

var transformer = javax.xml.transform.TransformerFactory.newInstance().newTransformer(); 

Message: (Desired evaluation could not be performed: JavaScript Error: Internal Error: ReferenceError: "javax" is not defined. (JavaScript Error: Internal Error: ReferenceError: "javax" is not defined.)

을 말한다 이 작품

OK 자바 * 패키지 직장에서

하지만 클래스 :

var writer = new java.io.StringWriter(); 

String으로 변환하는 것이 javax * package의 클래스를 사용하지 않고 가능합니까?

+0

무엇을하려하십니까? XML 처리를 수행하는 헬퍼 클래스를 작성하고 그 인스턴스를 스크립트 엔진에 바인딩해야한다. – mwhs

+0

@mwhs 자바 스크립트에서 자바 코드를 작성할 수있는 시스템에서 일하고있다. (자바 스크립트에서는 새로 추가, 아마도 js 내부에서 자바를 작성하는 것이 일반적이다.) 시스템에서 일부 API 메서드는 DOM 노드 인스턴스를 반환하고 자바 스크립트에서 Java 언어를 사용하여 String으로 변환해야합니다. 자바 스크립트 "엔진"은 javax 패키지를 지원하지 않는 것 같고 패키지 또는 사용자 정의 작성/* jar // * 클래스 파일에 대한 액세스 권한이 없습니다. 그 노드를 java * 클래스의 클래스를 사용하여 String으로 변환해야한다. – VextoR

+0

@VextoR'myNode.outerHTML' –

답변

1

소닉 ESB는 내부적으로 자바 스크립트 엔진으로 코뿔소를 사용하여도

org.w3c를 사용하여. * 괜찮습니다. 자바 스크립트에서 자바를 호출 할 때

, 당신은 Packages를 사용하여 자바 클래스를 참조해야합니다 : Packages.javax.xml.transform.TransformerFactory 이유를 문제가 Packages.java 글로벌 변수 java에 별칭이 된 것입니다없이 당신은 자바 패키지를 사용할 수 있습니다.

이렇게하면 javax 패키지의 클래스를 사용할 수 있습니다. 사실 원하는 병을 클래스 패스에 추가하고 해당 클래스를 사용할 수도 있습니다.

https://developer.mozilla.org/en-US/docs/Rhino/Scripting_Java