2008-09-23 11 views
2

AspectJ LoadTime-Weaving은 에이전트/자체 클래스 로더를 사용하여 JVM을로드해야하기 때문에 애플릿에서 사용자 JVM을로드/변경하는 방법이 있습니까? 또는 어쩌면 애플릿을로드하기 직전에 (부모 애플릿과 함께)Loadtime-AspectJ가 애플릿에서 작동하도록하려면 어떻게해야합니까?

+0

당신이 LTW 서명 항아리와 결혼하는 방법을 방법을 찾았나요? – FoxyBOA

+0

Chris R의 답변에 따르면 클래스 로딩이 문제라는 것을 이해하지만 javaagent 옵션을 사용하는 것은 어떨까요? – Yaneeve

답변

1

나는 완전히 운이 좋지 않을까 걱정됩니다. Sun docs on applet classloaders에 따르면 "웹 브라우저는 시작시 설정되는 클래스 로더를 하나만 사용하므로 시스템 클래스 로더를 확장, 오버로드, 재정의 또는 바꿀 수 없습니다. 애플릿은 자체 클래스 로더를 만들거나 참조 할 수 없습니다 "(강조).

당신이 그렇게 할 수없는 이유가없는 한이 문제에 대해 컴파일 시간을 길들인 것이 더 좋을 것입니다.

그러나 애플릿에 서명 한 경우이 문제를 해결할 수 있습니다. AspectJ는 Java Security를 ​​통해 요구 사항이 무엇인지에 대해 명확하지 않습니다. 나는 AspectJ 메일 링리스트에 올라 가서 물었다.

+0

JVMTI를 사용하면 어떨까요? – Yaneeve