Access Keys:
Skip to content (Access Key - 0)

AppFuse QuickStart - Korean

Labels

korean korean Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

AppFuse 2.x 를 사용해서 Java EE 애플리케이션을 개발하기 위해서, 아래에 나열된 순서를 따라주세요.

목차

  1. 새로운 프로젝트 생성하기
  2. 새로운 프로젝트 실행하기
  3. 즐기기.

프로젝트 생성하기

  1. 개발환경 을 셋업하거나 만약 되어 있다면 아래 단계를 계속 진행하세요.
    1. JDK 5 이상의 버전을 다운로드 하고 설치한다.(JRE가 아닌 JDK 설치경로에 대해 JAVA_HOME 환경 변수를 셋팅한다.)
    2. MySQL 5.x 버전을 다운로드 하고 설치한다.
    3. 로컬 PC에 SMTP 서버 를 셋업하거나 다른 호스트명을 사용하기 위해 src/main/resources 안의 mail.properties 를 변경한다. 디폴트 값은 "localhost" 이다.
    4. Maven 2.2.1+ 를 다운로드 하고 설치 한다.
  2. 명령창에서, "Source" 디렉터리로 이동한다. 그리고 나서 웹 프레임워크와 다른 선택 옵션을 선택한 Maven 명령어를 실행한다.
스택 선택하기
AppFuse는 다양한 형태를 가진다. 사용자로서의 경험을 최적화하고 단순화하기 위해, 많은 수의 archetypes를 만들었다. 최근에는 3가지 타입(light, basic 그리고 modular)의 AppFuse Archetypes가 존재한다. light archetypes는 빈약하고, basic archetypes는 사용자 관리와 보안을 추가로 포함하고, modular archetypes는 "core"와 "web" 그리고 재사용가능한 프로젝트를 생성하기 위해 필요한 다양한 기능을 가진다. 패키지 명과 일치하는 groupId*와 프로젝트명과 일치하는 *artifactId 를 수정해야 만 한다.
프로젝트를 생성할 때 경고를 볼수 있다. 만약 마지막에 *BUILD SUCCESSFUL*를 보게 된다면, 프로젝트는 성공적으로 생성되었음을 의미한다.

MySQL 5.x 데이터베이스를 설치하고 패스워드 없이 root 계정으로 접속가능하다면, AppFuse 를 즉시 실행할 수 있다. 내장 데이터베이스를 선호한다면, 최근에 H2, HSQLDB 등을 위한 데이터베이스 프로필을 추가했다.

MySQL 보안
패스워드 없이 root 계정으로 MySQL 을 실행하는 것은 보안적으로 좋지 않다. 데이터베이스를 생성했다면, 아래 명령어를 통해 root 패스워드를 변경할 수 있다.
mysql --user=root --pass='' mysql -e "update user set password=password('newpw') \
where user='root'; flush privileges;"

AppFuse 는 "root" 라는 사용자 이름과 디폴트로 빈 패스워드를 사용한다. 이 값을 변경하기 위해서는 프로젝트의 pom.xml 파일 끝 부분의 <jdbc.username> 와 <jdbc.password> 프로퍼티를 변경하면 된다.

애플리케이션 실행하기

AppFuse 실행은 쉽다. archetype 프로젝트가 생성되면, Maven은 hibernate3dbunit 을 사용하여 데이터베이스르 만들고 내용을 채울 것이다. 해야 할 것은 Jetty 컨테이너를 실행하기 위해 Maven을 사용하고 애플리케이션을 보는 것이다.

  1. archetype:generate 명령을 사용해서, ResourceNotFoundExceptionError merging velocity template 와 같은 문제가 발행하면, 아마도 오래되거나 지원하지 않는 maven-archetype-plugin 를 사용하는 것으로 보인다. mvn org.apache.maven.plugins:maven-archetype-plugin:2.0-alpha-4:generate -B ... 명령을 사용하여 Maven 을 지정된 플러그인과 함께 사용할 수 있다. 이 명령은 Maven goal 을 문제없이 실행하기 위해 명시한 플러그인을 로컬 Maven 저장소에 다운로드 할 것이다.
  2. "내장 모드"에서 전체 소스 모드로 변환하기 위해 프로젝트 디렉터리에서 mvn appfuse:full-source 를 실행할지 결정하라.
  3. 새로운 프로젝트를 소스 관리에 둘지 체크하고 소스 관리 방법이 없다면, 무료 Subversion 호스팅인 Google Code를 생각해보라.
  4. 명령창에서, 프로젝트 디렉터리로 "이동(cd)* 하고 JAR파일을 다운로드 하기 위해 "mvn"를 실행하라. 프로젝트에서 Tomcat과 통합 테스트가 실행된다. 모든 것을 다운로드하고 테스트까지 실행하는데는 5분에서 10분 정도 소요되니 간단히 커피를 마시면 쉬는 것도 좋을 것이다.
  5. 애플리케이션을 보기 위해, 프로젝트 디렉터리에서 *mvn jetty:run-war*를 실행하라. ( modular 프로젝트를 위해, 프로젝트의 _web_디렉터리에서 mvn jetty:run-war 를 실행할 필요가 있을 것이다. ). Maven은 Jetty를 시작하고 브라우저로 http://localhost:8080를 보여줄 것이다.
    admin 사용자를 위한 디폴트 사용자명/패스워드는 admin/admin 이다. 일반 사용자는 *user/user*를 사용한다.
  6. AppFuse로 처리하는 부분을 일부 수동으로 전환하기 위해, mvn war:inplace*를 실행하라. 이 명령어는 소스를 임의로 수정할 수 있도록 WAR 압축 파일을 _src/main/webapp_로 압축을 풀 것이다. *mvn jetty:run 를 실행할 수 있다. 이 명령어를 통해 실행중에 파일을 변경하고 필요하다면 Jetty가 리로드 될 것이다. 이 방법의 유일한 문제점은 프로젝트에서 업그레이드가 용이하지 않은 형태로 "exploded AppFuse"가 끝이라는 것이다. 그래서 mvn war:inplace*를 실행하기 전에 프로젝트를 버전관리 형태로 전환하기를 권한다. *mvn jetty:run 를 실행할때 에러가 발생한다면, lib(rm -r src/main/webapp/WEB-INF/lib/)와 struts.xml(rm src/main/webapp/WEB-INF/classes/struts.xml) 파일을 제거하라.

mvn jetty:run 를 사용할 때 OutOfMemory 에러가 발생하면, 해당 메일링 리스트 쓰레드 를 보라.

개발 환경
AppFuse기반의 애플리케이션 개발을 위한 컴퓨터를 셋업하는 방법을 보기 위해 개발 환경 를 보라.
데이터베이스 셋팅 변경하기
MySQL 데이터베이스 셋팅을 변경하기 위해, pom.xml 파일 끝 부분의 <jdbc.*> 프로퍼티들을 변경하라. MySQL 가 아닌 다른 데이터베이스를 사용하기 위해서는 데이터베이스 프로필 를 보라.

애플리케이션 개발하기

Eclipse, IDEA 또는 NetBeans 를 사용하여 애플리케이션을 개발할 수 있다. 이클립스를 사용하도록 프로젝트 파일을 생성하기 위해, mvn install eclipse:eclipse*를 실행하라. IDEA를 위해서는, *mvn idea:idea 를 사용하면 된다. 좀더 많은 설명은 IDE 참고 가이드 에서 볼 수 있다.

튜토리얼 은 애플리케이션을 개발하는 작업을 도와줄 것이다.

오프라인으로 개발하기
인터넷 연결없이 AppFuse 를 개발하고자 한다면, 의존 라이브러리를 다운로드하고 ~/.m2/repository 디렉터리에 압축을 풀어라. 이 위키에서 PDF 로 다운로드가 가능하다.
Adaptavist Theme Builder (4.0.0-M8) Powered by Atlassian Confluence 3.1, the Enterprise Wiki.