2012-07-06 5 views
1

나는 ajax 파일 업로드 시스템을 가동 중이다.스칼라 리프트 - 아파치의 디렉토리에 파일 저장하기

내가하려고하는 것은 Apache의 웹 루트 아래에있는 디렉토리에 파일을 저장하는 것입니다.이 응용 프로그램은 tomcat에서 실행 중이며 Webroot (tomcat) 외부에 파일을 저장하고 웹 루트 내부에 파일을 저장하는 것이 좋습니다. 아파치 어딘가에, 우리가 정기적으로 애플 리케이션을 업데이 트하십시오.

나는이있어 : 나에게 애플 리케이션의 위치를 ​​제공 할 수 있습니다

var root = new java.io.File("").getAbsolutePath() 

.

나는 이것을 애플리케이션의 config.xml에 추가하고 싶지 않기 때문에, 변경된 이벤트 나 서버를 교체 할 때 아파치 웹 루트의 위치를 ​​찾는 방법을 알고있는 사람이 있는지 궁금하다. 설치가 다릅니 까?

덕분에 많이 어떤 도움을 많이 감사합니다 :)

답변

1

현재 아파치 위치 찾기 내가 많이 "웹 루트"를 입력 와우

에 .. 가상 호스트를 다룰 필요가 특별히 경우, 까다로운 사업 . 아마도 속성 파일을 사용해야합니다. 각 환경에 하나씩 복수 Props files을 가질 수 있습니다.

리프트에는 속성 파일을로드하는 여러 가지 방법이 있으므로이를 사용하여 솔루션을 찾는 것이 좋습니다. 예를 들어, Lift에서 설정 파일을 찾을 위치를 재정의 할 수도 있습니다. 또한

, 당신은 같은 부두 시작 스크립트의 변수로 설정 아파치 가정을 가질 수 있습니다

JAVA_OPTIONS="$JAVA_OPTIONS -Dapache.home=/etc/httpd" 

를 다음 코드를 사용

val apacheHome = System.getProperty("apache.home") 

그 시스템을 조심 이 property가 존재하지 않는 경우는 .getProperty는 null를 돌려줍니다. Option을 사용하여 더 관용적 인 수표를 만들 수 있습니다.

val apacheHome = Option(System.getProperty("apache.home")) 
// apacheHome: Option[java.lang.String] = ... 
관련 문제