1. download apache tomcat
ผมโหลด ตัว Core : tar.gz นะ
2. extract to folder
3.
แล้วจะเข้าเวปได้จาก http://localhost:8080
5. เข้า tomcat manager
6. มันจะถาม username, password
ซึ่งจริงๆต้อง ไปใส่ username, password ในไฟล์ /conf/tomcat-users.xml ก่อน
ตามนี้
แล้ว restart tomcat ทีนึง
>> ถ้า start webapp บางตัวไม่ติด ให้ไปดูไฟล์ log/catalina.out หรือ
>> ถ้าอยากเปลี่ยน port ที่รัน tomcat แก้ใน conf/server.xml
อยากเปลี่ยน version ของ tomcat แก้ใน
etc/default/tomcat7
JAVA_HOME=/usr/lib/jvm/java-7-oracle
วิธี deploy webapp ( เขียน app ลง tomcat นั่นแหละ )
วิธีง่ายสุด
1. ก๊อปไฟล์ war ที่ิ build จาก mvn clean install ไปวาง
sudo cp /vagrant/HelloSpringVagrant/target/HelloSpring.war /var/lib/tomcat7/webapps/
2. restart tomcat
Build + Deploy Auto โดยใช้ MVN
วิธี install maven
pom.xml
$ mvn clean tomcat7:runwar
Build + Deploy Auto โดยใช้ Ant
1. ลง ant ก่อน apt-get install ant
ผมโหลด ตัว Core : tar.gz นะ
2. extract to folder
3.
$ bin/startup.sh
แล้วจะเข้าเวปได้จาก http://localhost:8080
5. เข้า tomcat manager
6. มันจะถาม username, password
ซึ่งจริงๆต้อง ไปใส่ username, password ในไฟล์ /conf/tomcat-users.xml ก่อน
ตามนี้
<tomcat-users> <role rolename="manager"/> <role rolename="admin"/> <user username="dsin" password="somepassword" roles="manager,admin"/> </tomcat-users>
แล้ว restart tomcat ทีนึง
>> ถ้า start webapp บางตัวไม่ติด ให้ไปดูไฟล์ log/catalina.out หรือ
$ tail -f log/catalina.outก็ได้
>> ถ้าอยากเปลี่ยน port ที่รัน tomcat แก้ใน conf/server.xml
<Connector port="8088" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"/>
อยากเปลี่ยน version ของ tomcat แก้ใน
etc/default/tomcat7
JAVA_HOME=/usr/lib/jvm/java-7-oracle
วิธี deploy webapp ( เขียน app ลง tomcat นั่นแหละ )
วิธีง่ายสุด
1. ก๊อปไฟล์ war ที่ิ build จาก mvn clean install ไปวาง
sudo cp /vagrant/HelloSpringVagrant/target/HelloSpring.war /var/lib/tomcat7/webapps/
2. restart tomcat
Build + Deploy Auto โดยใช้ MVN
วิธี install maven
pom.xml
$ mvn clean tomcat7:runwar
Build + Deploy Auto โดยใช้ Ant
1. ลง ant ก่อน apt-get install ant
2. ทำให้ ant รู้จัก apache tomcat
copy ไฟล์ lib/catalina-ant.jar ไปลงที่ ant library directory
ของผมอยู่ที่ /usr/share/ant/lib ( เราสามารถดูจาก snaptic ได้ )
3.
สร้างโฟสเดอร์ app ไว้ที่ไหนก็ได้บนเครื่อง เช่น [project dir]
ใส่ไฟล์ build.xml ไว้ที่ top level ของ project directory แล้วใส่ build.properties ตามนี้ ไว้ที่เดียวกัน
3.1 build.xml
Ant จะอ่าน build conf จาก build.xml
ดูตัวอย่าง ไฟล์ build.xml
- เราอาจเปลี่ยน project name="My Project"
- ถ้าเปลี่ยน port tomcat ต้องแก้
4. อย่าลืม start tomcat ก่อน จากนั้น
ไปที่ top level
ถ้าสำเร็จ tomcat จะสร้างไฟล์ไว้ที่ $CATALINA HOME/webapps/ โดยอัตโนมัติ
ถ้าลงแล้ว fail อยากลงใหม่ / หรือ ต้องการแก้โค้ด ใช้
ถ้าอยาก remove
** NOTE : ant จะอ่าน config file จาก build.xml แล้วทำตาม config file นั้นน้ะจ้ะ
copy ไฟล์ lib/catalina-ant.jar ไปลงที่ ant library directory
ของผมอยู่ที่ /usr/share/ant/lib ( เราสามารถดูจาก snaptic ได้ )
3.
สร้างโฟสเดอร์ app ไว้ที่ไหนก็ได้บนเครื่อง เช่น [project dir]
ใส่ไฟล์ build.xml ไว้ที่ top level ของ project directory แล้วใส่ build.properties ตามนี้ ไว้ที่เดียวกัน
Ant จะอ่าน build conf จาก build.xml
ดูตัวอย่าง ไฟล์ build.xml
- เราอาจเปลี่ยน project name="My Project"
- ถ้าเปลี่ยน port tomcat ต้องแก้
<property name="manager.url" value="http://localhost:8088/manager"/> เป็น port ใหม่ด้วย
3.2 config.properties
ถ้ามี config พวก specific ที่ต่างๆกันในแต่ละ development environment ให้ไปเขียนไว้ใน build.properties ซึ่งมันจะ override build.xml อีกที
3.2 config.properties
ถ้ามี config พวก specific ที่ต่างๆกันในแต่ละ development environment ให้ไปเขียนไว้ใน build.properties ซึ่งมันจะ override build.xml อีกที
config.properties
# Context path to install this application on app.path=/hello # Tomcat 6 installation directory catalina.home=/home/dsin/apache-tomcat-6.0.18 # username password ของ Tomcat manager ที่ตั้งไว้ใน conf/tomcat-users.xml manager.username=dsin manager.password=somepassword
4. อย่าลืม start tomcat ก่อน จากนั้น
ไปที่ top level
$ ant install
ถ้าสำเร็จ tomcat จะสร้างไฟล์ไว้ที่ $CATALINA HOME/webapps/ โดยอัตโนมัติ
ถ้าลงแล้ว fail อยากลงใหม่ / หรือ ต้องการแก้โค้ด ใช้
$ ant reload
ถ้าอยาก remove
$ ant remove # uninstall from /webapps/
** NOTE : ant จะอ่าน config file จาก build.xml แล้วทำตาม config file นั้นน้ะจ้ะ
5. ทดลองสร้าง Class HttpServlet ใน src
เช่น
[project dir]/src/mypackage/Hello.java
NOTE : สร้าง dir ชื่อแพคเกจก่อน ในที่นี้คือ mypackage
เอาคลาสใน src ไปสร้าง war file ด้วย
6. ต่อไปพวก static ไฟล์ทั้งหลาย
เอาไฟล์ hello.jsp, index.html ไว้ที่ [project dir]/src/web
tomcat.gif ไว้ใน [project dir]/src/web/images
ใส่ไฟล์ web.xml ไว้ที่ [project dir]/web/WEB-INF
บอก tomcat ว่า จะให้ แพคเกจนี้ไปขึ้นที่ URI ไหน โดยเพิ่มโค้ดในไฟล์ web.xml
reference
hello โฟลเดอร์ที่แนะนำให้สร้างในโฟลเดอร์ app ของเรา
docs/src/
.java to generate Servlets, JavaBeans
ส่วนใหญ่ คลาส ของเวปจะถูกเขียนเป็น packages ดังนั้น โฟลเดอร์ src นี้ก็จะมี โฟลเดอร์ย่อยๆ เป็น โฟลเดอร์ของ package อยู่
web/
นี่คือ document-root เลยแหละ
เอาไว้ใส่พวกไฟล์ static ทั้งหลาย (.jsp , .html, .js , .css, image files)
web/WEB-INF/
เก็บไฟล์ config, application server ไม่อนุญาตให้เข้าถึง directory นี้ผ่านทางเวปได้
• web.xml:
• tag : library descriptor files
• classes/ server-side classes: servlets, utility classes, and JavaBeans components.
If your classes are organized into packages, the package structure should be replicated as directories under classes/
• tags/: contain tag files implementing tag libraries
• lib/: contain JAR archives of any libraries called by the server-side classes
web/META-INF/context.xml
Tomcat-specific configuration, e.g., for logging, data sources, etc.
และระหว่าง development แนะนำให้สร้างสองไดเรกทอรี่ข้างล่างนี้ด้วย
build/: the image to be archived and deployed to the container.
dist/
: the binary image to be created for distribution.
build and dist directories should not be archived in source code control. Likewise, it is recom-
mended that any libraries you need, for example JDBC drivers, should not be stored in source code control. They should be copied in at build time with ant.
แถมๆๆ
[eclipse] Add Tomcat Project to Tomcat
Project Properties
tick Is a Tomcat Project
and put the Context name to the /urinaja
In this case, URL will be http://localhost:8080/urinaja
if not shown up, try to restart tomcat.
เช่น
[project dir]/src/mypackage/Hello.java
NOTE : สร้าง dir ชื่อแพคเกจก่อน ในที่นี้คือ mypackage
เอาคลาสใน src ไปสร้าง war file ด้วย
$ ant dist
6. ต่อไปพวก static ไฟล์ทั้งหลาย
เอาไฟล์ hello.jsp, index.html ไว้ที่ [project dir]/src/web
tomcat.gif ไว้ใน [project dir]/src/web/images
ใส่ไฟล์ web.xml ไว้ที่ [project dir]/web/WEB-INF
บอก tomcat ว่า จะให้ แพคเกจนี้ไปขึ้นที่ URI ไหน โดยเพิ่มโค้ดในไฟล์ web.xml
hello
docs/src/
.java to generate Servlets, JavaBeans
ส่วนใหญ่ คลาส ของเวปจะถูกเขียนเป็น packages ดังนั้น โฟลเดอร์ src นี้ก็จะมี โฟลเดอร์ย่อยๆ เป็น โฟลเดอร์ของ package อยู่
web/
นี่คือ document-root เลยแหละ
เอาไว้ใส่พวกไฟล์ static ทั้งหลาย (.jsp , .html, .js , .css, image files)
web/WEB-INF/
เก็บไฟล์ config, application server ไม่อนุญาตให้เข้าถึง directory นี้ผ่านทางเวปได้
• web.xml:
• tag : library descriptor files
• classes/ server-side classes: servlets, utility classes, and JavaBeans components.
If your classes are organized into packages, the package structure should be replicated as directories under classes/
• tags/: contain tag files implementing tag libraries
• lib/: contain JAR archives of any libraries called by the server-side classes
web/META-INF/context.xml
Tomcat-specific configuration, e.g., for logging, data sources, etc.
และระหว่าง development แนะนำให้สร้างสองไดเรกทอรี่ข้างล่างนี้ด้วย
build/: the image to be archived and deployed to the container.
dist/
: the binary image to be created for distribution.
build and dist directories should not be archived in source code control. Likewise, it is recom-
mended that any libraries you need, for example JDBC drivers, should not be stored in source code control. They should be copied in at build time with ant.
แถมๆๆ
[eclipse] Add Tomcat Project to Tomcat
Project Properties
tick Is a Tomcat Project
and put the Context name to the /urinaja
In this case, URL will be http://localhost:8080/urinaja
if not shown up, try to restart tomcat.
ความคิดเห็น