WTP is a very promising eclipse extension, that seems to have been very well though from the ground up, and from my point of view gives you better control than myEclipse (what I have been using so far).
It took me about a day to be able to use wtp 0.7rc2 with my maven projects. I couldn't find any relevant up to date documentation but some bugzilla entries and some outdated test plans. I am writing this post to not forget what I have been doing so far.
Basically a maven project is a project with the following features:
- separation of sources by topic java, test, webapp
- usage of external libraries with a variable (MAVEN_REPO)
- eclipse project dependency where needed (<eclipse.dependency>true</eclipse.dependency>)
[ArtifactId] will denote the current project name as per maven standards
This is still a very manual process, hopefully either the eclipse maven plugin or the mevenide eclipse plugin will be enabled to generate/edit/synchronize those configuration files.
Setup: eclipse 3.1 + wtp 0.7 RC2 or RC3
Of course you also need to install EMF/GEF/JEM plugins. I highly recommend installing in an extension directory (a directory with an eclipse subfolder and an empty file named .eclipseextension), so it is easy to switch versions and update to the latest version without having to reinstall eclipse from scratch.
I have two kind of projects, libraries and webapps. Libraries are used by webapps. This setup looks exactly like what is described by Integrating existing maven projects in WTP and by Flexible project test plan. But following those instructions written for WTP-M3 won't work with the current release of WTP.
I assume the projects are already setup as standard eclipse projects and compiling. To edit configuration files, you should switch to the resource perspective and disable "build automatically".
Step 1: setup the library projects
Edit .project there should be 3 builders in the following order:
- org.eclipse.wst.common.modulecore.ComponentStructuralBuilder
- org.eclipse.jdt.core.javabuilder
- org.eclipse.wst.common.modulecore.ComponentStructuralBuilderDependencyResolver
- org.eclipse.jdt.core.javanature
- org.eclipse.wst.common.modulecore.ModuleCoreNature
Create a .wtpmodules file that contains the following code
<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId">
<wb-module name="[artifactId]">
<module-type module-type-id="jst.utility"/>
<wb-resource path="/"/>
</wb-module>
</project-modules>
<project-modules id="moduleCoreId">
<wb-module name="[artifactId]">
<module-type module-type-id="jst.utility"/>
<wb-resource path="/"/>
</wb-module>
</project-modules>
Step 2: setup the webapps
Edit .project and add the following builders
- org.eclipse.wst.common.modulecore.ComponentStructuralBuilder
- org.eclipse.jdt.core.javabuilder
- org.eclipse.wst.validation.validationbuilder
- org.eclipse.wst.common.modulecore.ComponentStructuralBuilderDependencyResolver
- org.eclipse.wst.common.modulecore.DependencyGraphBuilder
- org.eclipse.jem.workbench.JavaEMFNature
- org.eclipse.jst.j2ee.web.WebNature
- org.eclipse.jdt.core.javanature
- org.eclipse.wst.common.modulecore.ModuleCoreNature
Create a file .wtpmodules which reads
<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId">
<wb-module deploy-name="[artifactId]">
<module-type module-type-id="jst.web">
<version>2.3</version>
<property name="context-root" value="[artifactId]"/>
<property name="java-output-path" value="/bin/"/>
</module-type>
<wb-resource source-path="/src/java" deploy-path="/WEB-INF/classes"/>
<wb-resource source-path="/src/webapp" deploy-path="/"/>
<dependent-module deploy-path="/WEB-INF/lib"
handle="module:/resource/[libArtifactId]/[libArtifactId]">
<dependency-type>uses</dependency-type>
</dependent-module>
<dependent-module deploy-path="/WEB-INF/lib"
handle="module:/classpath/var/MAVEN_REPO/[groupId]/jars/[artifactId]-[version].jar"/>
</wb-module>
</project-modules>
<project-modules id="moduleCoreId">
<wb-module deploy-name="[artifactId]">
<module-type module-type-id="jst.web">
<version>2.3</version>
<property name="context-root" value="[artifactId]"/>
<property name="java-output-path" value="/bin/"/>
</module-type>
<wb-resource source-path="/src/java" deploy-path="/WEB-INF/classes"/>
<wb-resource source-path="/src/webapp" deploy-path="/"/>
<dependent-module deploy-path="/WEB-INF/lib"
handle="module:/resource/[libArtifactId]/[libArtifactId]">
<dependency-type>uses</dependency-type>
</dependent-module>
<dependent-module deploy-path="/WEB-INF/lib"
handle="module:/classpath/var/MAVEN_REPO/[groupId]/jars/[artifactId]-[version].jar"/>
</wb-module>
</project-modules>
The handle protocol is as follow:
- classpath is a classpath reference, the second item on the path can be lib or var (as the kind attribute in the .classpath file)
- resource is an eclipse flexible project reference, the second item being the project name, and the third item a module within the project. dependency-type can be uses which build the jar for you or consumes which copy the files across.
You can now enable "automatic building", and your webapp should be assembled in the .deployables directory. You can then rigth-click your webapp project icon and Run it on the server of your choice.
This is a very error prone process, as there is no error or warning if you provide a broken .wtpmodules file.
Any comments appreciated.
45 comments:
Great explanation of modules definition, thanks. it even works for the final release of WTP 7.0
Is there a way to do a simple copy from anywhere from my eclipse project to anywhere to .deployables directory ?
I nee that because my web.xml file is in the conf directory of my eclipse project and I need to deploy it in .deployables/WEB-INF.
very usefull. I use for automate coping some .jar in /WEB-INF/lib
Worked for me (M8, WTP 0.7), thanks!
When I do this, it correctly creates files under my .deployables/Project/WEB-INF/lib directory, but they don't have the .jar suffix. If I rename them then Tomcat will see them, if not then it doesn't. I could swear that this worked the last time I tried it, too. Any help would be very much appreciated.
I accidentally searched and visited your site. I still saw several posts during my visit, but the text was neat and readable. I will quote this post and post it on my blog. Would you like to visit my blog later? Feel free to visit my website;
일본야동
일본야동
국산야동
일본야동
한국야동
Wonderful items from you, man. I’ve have in mind your stuff previous to and you’re just extremely excellent. I actually like what you’ve acquired here, really like what you’re saying and the way in which through which you assert it. You’re making it entertaining and you still care for to keep it smart. I cant wait to read far more from you. That is actually a terrific web site. Feel free to visit my website;
일본야동
일본야동
국산야동
일본야동
한국야동
Hello there, You have performed an excellent job. I will definitely dig it and personally suggest to my friends. I’m confident they will be benefited from this web site. Feel free to visit my website;
일본야동
일본야동
국산야동
일본야동
한국야동
Hard to ignore such an amazing article like this. You really amazed me with your writing talent. Thank for you shared again. Feel free to visit my website;
일본야동
일본야동
국산야동
일본야동
한국야동
Great write-up, I am a big believer in commenting on blogs to inform the blog writers know that they’ve added something worthwhile to the world wide web! Feel free to visit my website;
일본야동
일본야동
국산야동
일본야동
한국야동
ดูหนัง av ญี่ปุ่น jav เอวีซับไทย หนังโป๊ ฟรี ตลอดทั้งปี av th แหล่งรวม หนัง xxx เล่าเรื่องเสียว ที่จะทำให้คุณได้รับความเพลิดเพลินในการรับชม javmost
ufabet1688x สมัคร เว็บแทงบอลออนไลน์ ยูฟ่าเบท ที่ได้มาตรฐานระดับโลก เว็บ UFABET มือถือ ที่ดีที่สุดในประเทศไทย แทงบอลออนไลน์ คาสิโน บาคาร่า สล๊อต ufabet เข้าสู่ระบบ
บริการทุกระดับประทับใจ เลือกเล่น betflixsupervip มีหลากหลายเกมสล็อต ไม่ว่าจะเป็น สล็อต joker, pgslotgame , super-slot ที่หาเล่นได้ทั้งหมดจาก betflixsupervip ของเรา ทางเราเปิดบริการตลอด 24 ชั่วโมง ฝากถอนได้ดั่งใจ betflix
ที่สุดแห่งบาคาร่าออนไลน์ biobetgaming บริการตลอด 24 ชั่วโมง บริการด้านเกมคาสิโนหลากหลายเช่น บาคาร่าออนไลน์ รูเร็ท แบล็คแจ็ค เสือมังกร ไฮโล และอื่นๆอีกมากมาย ที่มาพร้อมกับโปรโมชั่นโดนใจเน้นๆ ที่นี่ที่ biogaming
เดิมพันออนไลน์กับเว็บเราสิ AMBBET168X ยินดีให้บริการ เราเป็นเว็บตรงจากต่างประเทศจริง เราไม่ได้มาเล่นๆ แต่เราจริงจัง จัดเลย ambbet พร้อมบริการตลอด 24 ชั่วโมง ปลอดภัยไร้กังวล 100%
Free to play, leading, premium, surf strategy, strategy, strategy, strategy, engine... Multi surf for free Go and try to play until you may think that surfing the web. and recommend that you do not stray , เติมเกม
Pgslot 7-day continuous deposit promotion
Conditions for receiving
1. All customers must be members on the website with us, both old and new customers.
2. The customer must have Deposit 500 baht per bill or more, 1 time
3. Customers come to work Continuous deposit within our website for 7 consecutive days
4. Customers can receive immediately 500 baht.
**note**
- Make the balance 2 times, withdraw up to 50,000 baht ambbet
บอลพรีเมียร์ลีก Very helpful! I am currently on the hunt for a platform that will best fit my needs. This gave me more options to consider!
The blog and data is excellent and informative as well your work is very good and I appreciate well hopping for some more informative posts.
Business Analytics Course in Gurgaon
Slots to find their own techniques and to play in real online slots games. The prize distribution of each slot game is distributed every hour. Some give out every time you press Spin or spin the full amount according to the rules, including the rows that are arranged according to the Line of the game that is specified. Prizes and jackpots will also increase. Slot games can be considered as a game that has a low investment and a really big profit. because starting from 2 baht until 2000 pgslot
Si desea obtener ganancias de los juegos de apuestas, tenemos una buena guía que es una guía de juegos profesional que los jugadores han utilizado para presentarle más formas de jugar. Juegue juegos para que pueda ganar aún más premios para principiantes y principiantes. También nos gustaría recomendar a Jiri como su opción de apuestas. El precio de este juego es que incluso si es un juego completamente nuevo, ¿sabe que puede generar grandes pagos? ambbet
Playing Slotxo with good sites and above all else that must most important And playing with it is control, sanity, and there must be a good rhythm to play. because online games It has changed all the time and there is still very little time to come into play. When you have free time, you need to look and plan. To play well because it will cause problems. Everything was resolved. To play well and carefully will bring the most enormous amount of money ambbet
Slots are the most popular online games. The game with the fastest mobile phone support for smartphones. and the most convenient because with the method of applying through the automatic system And there is a fast deposit with an automatic system. Importantly, there is no limited area to play using the Internet to connect to this. Making money with online games is very easy in this era. ambbet
Many people are still addicted to playing. in old style That is, if you want money from playing here a lot or starting that should not be less over a thousand per day will be considered the least and don't waste time to enter here Should be able to play at least 2 hours a day, or some people may force themselves to continue playing at 2 hours and per day should not have to play more than 3 rounds of games ambbet
pgslot things you should know before playing games
after getting to know already famous camp Now let's take a closer look at what we should know. before playing so you can Make better profits, not many, which in the beginning, many people may have some in the part that they do not understand is normal But if you play for one or two eyes pgslot
the fastest, the game is interesting to play, there are many characteristics and every time playingthe fastest, the game is interesting to play, there are many characteristics and every time playingthe fastest, the game is interesting to play, there are many characteristics and every time playing สล็อต
Selling characters, making money from playing games in the old days. Is to spin the characters that we play to be good and have enough strengths. In order to sell to people who are interested in playing, come to buy our characters to use in playing. which perhaps these characters must rely on the addition of the game to update the character to be more skilled which of course if how good have more chances pgslot
Online slots, if you want to interpret more Gambling games are a simple way to earn money. don't think too much Or known as a shortcut of the other person who already knows that. Here, there are real payouts that go along with the fun of playing. สล็อต
want to be a millionaire with little capital Choose to play with the big web slots. free credit giveaway No need to deposit first like PGSLOT superslot เครดิตฟรี
Entertainment, stress relief and easy money, many of you may think. It's a joke, but in fact, online slots can help you earn real money in no time. บาคาร่า
Online slots, slots, slotxo, online mobile games, deposit-withdraw, top-up with automatic system Convenient and easy deposit-withdrawal 24 hours a day. pgslot
nction that allows us to spin the wheel. And this button must be said that it is the most important in the game that it is as important as t บาคาร่า ออนไลน์
The volume of the website does not go through middlemen, satisfaction, easy to play, fast money. ambbet
The newest mobile game adapted to the online gaming system. is a website that combines slot games ambbet
Worth it since being a member If you want the value of playing slots, don't wait. Apply via line @. pgslot
pg Slot This camp has many promotions, whether from new registration to old membership, and there are bonuses that are easy to break, absolutely easy to break, meet international standards. superslot
You immediately hit the jackpot of the game. which is an online slot game that are similar to slot machines superslot
When the story of the ghost of Krahang is not clearly stated. Themes in the game are designed to be awesome with beautiful colors and images. ambslot
All game camps now come in one application. so that the players Get comfortable in playing บาคาร่า
Dinosaur slot game with cute images. It is a 5-reel, 3-row slot game. Sign up and join in the fun. ข่าวบอลล่าสุด
add-ons to buy will be impossible If not a free spinner There are many games especially new games will focus on some players who do not have to wait for free spin superslot เครดิตฟรี
We are a direct website that pays for real. Make a lot of money and withdraw 100% that comes with the service from the lovely admins. sexybacarat
That we will be able to win at online slots games. In addition to using various techniques in play playing time selection It is also important to play games today winbigslot. pgslot
for a long time And it's the hottest website this year. Because there are always new online games to play. ambbet
Post a Comment