2013-06-29 2 views
3

내 Coldfusion 프로젝트에 jar/java 파일을 포함하려면 어떻게해야합니까? 현재 내가 <cfscript>ColdFusion에 Java 파일 포함

나 디렉토리가 나에이 줄을 사용하고 나의 display.cfm 파일 I이

<cfscript> 
    configBuilder = createObject("java", "twitter.com.ConfigurationBuilder"); 
</cfscript> 

하지만 같은 스크립트에서 OBJ를 호출하고이

website_name 
     |__ Login 
      |__ connection 
       |__ display.cfm 
       |__ twitter 
        |__ com 
         |__ ConfigurationBuilder.java 

처럼 보인다 display.com을 실행하면 오류가 발생합니다.이 오류는 다음과 같습니다.

An exception occurred while instantiating a Java object. The class must not be 
an interface or an abstract class. Error: ''. 

The error occurred in website_name/login/azam/connection/display.cfm: line 57 


57 :   configBuilder = createObject("java", "twitter.com.ConfigurationBuilder"); 

트위터 기능을 호출 할 수 있도록 자바 클래스를 호출하고 함수를 호출하는 방법은 무엇입니까?

+1

당신이 * 클래스 경로에 항아리를 추가하고 * 서버를 다시 시작 했습니까 (클래스 mypackage.myClass이 하위 디렉토리 mypackage로 전환)? [** 질문을 업데이트하십시오] (http://stackoverflow.com/posts/17381871/edit) 전체 오류 메시지 ** 및 ** 스택 추적을 포함하십시오. – Leigh

답변

3

클래스 경로에 클래스 또는 jar 파일을 추가하는 가장 쉬운 방법은 자동으로 선택되는 lib 디렉토리에 파일을 놓는 것입니다. 디렉토리는 {cf_installation}/servers/lib에 있습니다. 이 클래스 파일은 모든 서버에서 사용할 수 있습니다. 당신이 ColdFusion에서 10을 사용하는 경우

http://blogs.adobe.com/cantrell/archives/2004/07/the_definitive.html

+1

가장 간단한 옵션이지만 CF 클래스 경로에 jar를 추가 할 수 없으면 [javaLoader.cfc] (http://javaloader.riaforge.org/). – Leigh

+0

@Leigh 당신의 메서드를 사용했지만 오류가 발생했을 때'JavaLoader.cfc : line 97'의'Element CLASSLOADER is INSTANCE.'에서 정의되지 않았습니다. 그리고이 객체를''그런 다음 내 스크립트에서이 스크립트와 같이'configBuilder = javaloader.create ("ConfigurationBuilder"). init(); ' –

2

당신이 동적으로 자바 파일을로드하는 기능에 새로 지어진를 사용할 수 있습니다 surfealokesea으로

Specifying custom Java library path in the Application.cfc

+1

참이지만 태그는 CF9를 사용하고 있음을 나타냅니다. – Leigh

+0

@Leigh 맞아, 내가 CFL을 사용하고있다 –

+0

@Leigh localhost로 javaloader의 createObjec가 잘 작동하지만, 같은 일을하고 서버에 업로드 한 다음 실행하면 'urlClassLoader = createObject ("java ","java.net.URLClassLoader ") init (urls);'오류는'JavaLoader.cfc : line 390'에 있습니다. –

2

their answer에서 말했다 :

클래스 경로에 클래스 파일 또는 jar 파일을 추가하는 가장 쉬운 방법은 에있는 파일을 삭제하는 것입니다. 그들이 자동으로 lib 디렉터리를 주워. 디렉토리가

CF Directory(where CF is installed) 
          |__ servers/lib 

에 위치한이 클래스 파일은 모든 서버에 사용할 수 있습니다.

또한

{cf_installation}/servers/default/cfmx/WEB-INF/lib. 

에 놓아 만 ColdFusion 서버에 클래스 파일을 사용할 수 있습니다 (참고 {cf_installation}에 이르렀/서버/기본/CFMX/WEB-INF /에서 cfusion는/lib 디렉토리가 작동하지 않습니다)

0

ColdFusion에서 9 여기 :.

  1. 넣어 항아리에 :를개
  2. 넣어 클래스에 : wwwroot/WEB-INF/classes