JBoss Tools SVN: r19970 - in trunk/documentation/guides/Beginners_Guide/en-US: images and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: irooskov(a)redhat.com
Date: 2010-01-27 23:43:55 -0500 (Wed, 27 Jan 2010)
New Revision: 19970
Added:
trunk/documentation/guides/Beginners_Guide/en-US/Workshops.xml
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_Quick_Fix.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_Quick_Fix_2.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_Quick_Fix_Runtime.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_RESTEasy.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_menu.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_Quick_Fix_Targeted_Runtimes.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_Add_simple_to_server.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_Add_to_Server.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_Quick_Fix_Finish.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_GET_1.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_GET_2.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_Input.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_PUT.png
trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_selection.png
Modified:
trunk/documentation/guides/Beginners_Guide/en-US/Beginners_Guide.xml
trunk/documentation/guides/Beginners_Guide/en-US/Where_to_go_from_here.xml
trunk/documentation/guides/Beginners_Guide/en-US/master.xml
Log:
added new workshop chapter to book
Modified: trunk/documentation/guides/Beginners_Guide/en-US/Beginners_Guide.xml
===================================================================
--- trunk/documentation/guides/Beginners_Guide/en-US/Beginners_Guide.xml 2010-01-27 19:51:10 UTC (rev 19969)
+++ trunk/documentation/guides/Beginners_Guide/en-US/Beginners_Guide.xml 2010-01-28 04:43:55 UTC (rev 19970)
@@ -8,6 +8,7 @@
<xi:include href="The_interface.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
<xi:include href="Java_Web_(EE)_and_Standard_Edition_(SE).xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
<xi:include href="Service-Oriented_Architecture_Development.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+ <xi:include href="Workshops.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
<xi:include href="Where_to_go_from_here.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
<xi:include href="Revision_History.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
<!-- <index /> -->
Modified: trunk/documentation/guides/Beginners_Guide/en-US/Where_to_go_from_here.xml
===================================================================
--- trunk/documentation/guides/Beginners_Guide/en-US/Where_to_go_from_here.xml 2010-01-27 19:51:10 UTC (rev 19969)
+++ trunk/documentation/guides/Beginners_Guide/en-US/Where_to_go_from_here.xml 2010-01-28 04:43:55 UTC (rev 19970)
@@ -9,7 +9,7 @@
For documentation about the JBoss Enterprise Application Platform visit <ulink url="http://www.redhat.com/docs/en-US/JBoss_Enterprise_Application_Platform/">http://www.redhat.com/docs/en-US/JBoss_Enterprise_Application_Platform/</ulink>.
</para>
<para>
- For information pertaining to Eclipse visit <ulink url="http://www.eclipse.org/">www.eclipse.org</ulink>.
+ For information pertaining to Eclipse visit <ulink url="http://www.eclipse.org/">http://www.eclipse.org/</ulink>.
</para>
</chapter>
Added: trunk/documentation/guides/Beginners_Guide/en-US/Workshops.xml
===================================================================
--- trunk/documentation/guides/Beginners_Guide/en-US/Workshops.xml (rev 0)
+++ trunk/documentation/guides/Beginners_Guide/en-US/Workshops.xml 2010-01-28 04:43:55 UTC (rev 19970)
@@ -0,0 +1,322 @@
+<?xml version='1.0' encoding='utf-8' ?>
+
+<chapter id="chap-Beginners_Guide-Worshops">
+ <title>Workshops</title>
+ <para>
+ Follow the instructions in these workshops to broaden your knowledge and understanding of the <application>JBoss Developer Studio</application>.
+ </para>
+ <section id="sect-Beginners_Guide-Workshops-RESTEasy_workshop">
+ <title>RESTEasy workshop</title>
+ <para>
+ In this RESTEasy workshop we will provide an example of how to solve the problem of creating new customers for an online store. This will be achieved through the creation of a shopping application and adding customer records through a web browser.
+ </para>
+ <formalpara>
+ <title>Prerequisites</title>
+ <para>
+ The following technologies are necessary for this workshop:
+ <itemizedlist>
+ <listitem>
+ <para>
+ <application>JBoss Developer Studio 3.0</application>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <application>JBoss Enterprise Application Platform 5</application> or <application>JBoss Service Orientated Architecture Platform 5</application>
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <application>Firefox 2.0</application> or higher web browser
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <application>REST Client</application> <application>Firefox</application> plug-in available from <ulink url="https://addons.mozilla.org/en-US/firefox/addon/9780">https://addons.mozilla.org/en-US/firefox/addon/9780</ulink>
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </formalpara>
+ <para>
+ Make sure the <application>JBoss Developer Studio</application> is open with the application server running. For the purpose of simplicity it will be assumed for the rest of the workshop that you are running the <application>JBoss Enterprise Application Platform 5</application>, however the steps will be the same if you are using the <application>JBoss Service Orientated Architecture Platform 5</application>.
+ </para>
+ <para>
+ In the <application>JBoss Developer Studio</application> navigate to <menuchoice><guimenuitem>Help</guimenuitem><guimenuitem>Project Example</guimenuitem></menuchoice>.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-Project_Example_Menu">
+ <title>Project Example Menu</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Example_menu.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ The Project Example menu being selected through the JBoss Developer Studio GUI.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ In the <guimenuitem>Project Example</guimenuitem> menu dialog box, scroll to <menuchoice><guimenuitem>RESTEasy</guimenuitem><guimenuitem>RESTEasy Simple Example</guimenuitem></menuchoice> and click <guibutton>Finish</guibutton>.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-RESTEasy_Simple_Example">
+ <title>RESTEasy Simple Example</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Example_RESTEasy.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ Selecting to create the RESTEasy Simple Example.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ There will be two issues to fix before you can continue.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-Quick_Fixes">
+ <title>Quick Fixes</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Example_Quick_Fix.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ Displaying the two issues that will need to be fixed; detailed after this image.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ To fix the first issue with the description <guilabel>Target runtime JBoss 4.2.2 Runtime is not defined.</guilabel> click on this description and then click the <guibutton>Quick Fix</guibutton> button.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-Fixing_the_first_issue">
+ <title>Fixing the first issue</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Example_Quick_Fix_2.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ The description of the first issue is highlighted, waiting for the user to click the Quick Fix button.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The next dialog box will display two runtime issues to fix, however by fixing the second one labeled as <guilabel>Configure Targeted Runtimes</guilabel> both issues will be corrected.
+ </para>
+ <para>
+ Select the issue called <guilabel>Configure Targeted Runtimes</guilabel> and click the <guibutton>Finish</guibutton> button.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-Runtime_issues">
+ <title>Runtime issues</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Example_Quick_Fix_Runtime.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ Outlining the two runtime issues.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ A large dialog box will open with a long list of property categories on the left hand side. Navigate down to and click on the <guimenuitem>Targeted Runtimes</guimenuitem> property title. To the right of the menu where the <guilabel>JBoss 4.2.2 Runtime</guilabel> box is selected, deselect it and then select the name of your <application>JBoss Enterprise Application Platform 5</application> runtime.
+ </para>
+ <para>
+ Once the <application>JBoss Enterprise Application Platform 5</application> is selected and the old runtime deselected, click the <guibutton>Apply</guibutton> button and then the <guibutton>OK</guibutton> button.
+ </para>
+ <note>
+ <para>
+ In <xref linkend="figu-Beginners_Guide-Workshops-Selecting_the_correct_runtime"/>, the runtime that will be used is the one called <guilabel>JBoss EAP 5.0 Runtime Server</guilabel>, though the name will depend on what you called it when you configured the server for use with the <application>JBoss Developer Studio</application>.
+ </para>
+ </note>
+ <figure id="figu-Beginners_Guide-Workshops-Selecting_the_correct_runtime">
+ <title>Selecting the correct runtime</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Examples_Quick_Fix_Targeted_Runtimes.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ The JBoss 4.2.2 Runtime is displayed as selected to show how the user will be greeted by this property window.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ To fix the second issue with the description <guilabel>Java compiler level does not match the version of the installed Java project facet.</guilabel> click on this description and then click the <guibutton>Quick Fix</guibutton> button.
+ </para>
+ <para>
+ After clicking the <guibutton>Quick Fix</guibutton> button the Java compiler issue should disappear because the <application>JBoss Developer Studio</application> has made the necessary changes in the background to fix it.
+ </para>
+ <para>
+ The <guilabel>Quick Fix</guilabel> dialog box should now be empty. Click the <guibutton>Finish</guibutton> button.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-Completed_fixing_the_issues">
+ <title>Completed fixing the issues</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Examples_RESTEasy_Quick_Fix_Finish.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ The Quick Fix dialog box is displayed without any remaining issues.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ To add the project to the <application>JBoss Enterprise Application Platform 5</application> server right click on the server name in the <guimenuitem>Servers</guimenuitem> tab in the bottom section of your workbench. Click on the <guimenuitem>Add and Remove...</guimenuitem> option.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-About_to_add_the_project_to_the_server">
+ <title>About to add the project to the server</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Examples_RESTEasy_Add_to_Server.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ The servers right-click menu is displayed with the Add and Remove option highlighted for selection.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ From the <guilabel>Add and Remove</guilabel> dialog box ensure the box labeled <guilabel>If server is started, publish changes immediately</guilabel> is ticked. In the left-hand menu, highlight the project you just created called <guilabel>simple</guilabel> by clicking on it.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-Add_project_to_server">
+ <title>Add project to server</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Examples_RESTEasy_Add_simple_to_server.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ The simple project is highlighted about the Add button about to be pressed to configure it for the server.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ Click the <guibutton>Add ></guibutton> button to move it from the left-hand menu labeled <guilabel>Available</guilabel> to the right-hand menu labeled <guilabel>Configured</guilabel>. Once this is completed click the <guibutton>Finish</guibutton> button.
+ </para>
+ <para>
+ Your RESTEasy project has now been deployed onto your server. We will now test the application by using the REST Client plug-in within the Firefox web browser.
+ </para>
+ <para>
+ Open your Firefox web browser and navigate to <menuchoice><guimenuitem>Tools</guimenuitem><guimenuitem>REST Client</guimenuitem></menuchoice>.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-Selecting_the_REST_Client">
+ <title>Selecting the REST Client</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Examples_RESTEasy_RESTClient_selection.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ Selecting the REST Client from the Firefox menu.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ In the REST Client click on the <guibutton>Add Request Header</guibutton> button and type <property>content-type</property> for the <guilabel>Name</guilabel> and <property>application/xml</property> for the <guilabel>Value</guilabel>. This will ensure that the content will be consumable by the Plain Old Java Object (POJO) service at the server.
+ </para>
+ <para>
+ Select <guimenuitem>POST</guimenuitem> from the <guilabel>Method</guilabel> drop-down menu, copy <ulink url="http://localhost:8080/simple/rest-services/customers">http://localhost:8080/simple/rest-services/customers</ulink> into the drop-down menu beside the <guilabel>Method</guilabel> and paste the following into the <guilabel>Request Body</guilabel>:
+ </para>
+<screen><customer><first-name>Bill</first-name><last-name>Burke</last-name><street>256 Clarendon Street</street><city>Boston</city><state>MA</state><zip>02115</zip><country>USA</country></customer></screen>
+ <para>
+ The XML for the <guilabel>Request Body</guilabel> must not contain any spaces between XML tags to avoid exceptions occurring at the server end.
+ </para>
+ <para>
+ Click the <guibutton>Send</guibutton> button to add the customer information.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-Adding_a_customer">
+ <title>Adding a customer</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Examples_RESTEasy_RESTClient_Input.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ REST Client displays a green bar in the Response Header to signify a successful customer addition.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ To ensure the customer details were added, change the <guilabel>Method</guilabel> type to <guimenuitem>GET</guimenuitem> and the URL address to <ulink url="http://localhost:8080/simple/rest-services/customers/1">http://localhost:8080/simple/rest-services/customers/1</ulink>. The <emphasis>/1</emphasis> is added to the URL to select the customer with the <varname>customer id</varname> of 1, since that is the number that was given to the customer.
+ </para>
+ <para>
+ Click the <guibutton>Send</guibutton> button to retrieve the information. Select the <guilabel>Response Body</guilabel> tab beneath the <guilabel>Request Body</guilabel> section to view the returned information.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-Retrieving_customer_information">
+ <title>Retrieving customer information</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Examples_RESTEasy_RESTClient_GET_1.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ The customer information is displayed in the Response Body tab of the REST Client.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ We have added a customer and retrieved their information, now we will update their information. To achieve this change the <guilabel>Method</guilabel> to being <guimenuitem>PUT</guimenuitem> and copy the following into the <guilabel>Request Body</guilabel> (overwriting anything that may be in the <guilabel>Request Body</guilabel> already):
+ </para>
+ <screen><customer><first-name>Gary</first-name><last-name>Lamperillo</last-name><street>256 Clarendon Street</street><city>Venice</city><state>CA</state><zip>90291</zip><country>USA</country></customer></screen>
+ <para>
+ Remember to make sure there are no spaces between the XML tags when you copy the information into the <guilabel>Request Body</guilabel>.
+ </para>
+ <para>
+ Check to make sure the URL still reads <ulink url="http://localhost:8080/simple/rest-services/customers/1">http://localhost:8080/simple/rest-services/customers/1</ulink> from when you retrieved the customer information. By using the URL that references the ID of the customer you are updating that customer's record.
+ </para>
+ <para>
+ Click the <guibutton>Send</guibutton> button to update the information.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-Updating_customer_information">
+ <title>Updating customer information</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Examples_RESTEasy_RESTClient_PUT.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ REST Client displays a green bar in the Response Header to signify a successful update.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ To verify that the record has been updated change the <guilabel>Method</guilabel> type to <guimenuitem>GET</guimenuitem>, ensure the URL still references customer ID 1 and click the <guibutton>Send</guibutton> button.
+ </para>
+ <para>
+ Select the <guilabel>Response Body</guilabel> tab beneath the <guilabel>Request Body</guilabel> section to view the returned information.
+ </para>
+ <figure id="figu-Beginners_Guide-Workshops-Retreiving_updated_customer_information">
+ <title>Retrieving updated customer information</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Project_Examples_RESTEasy_RESTClient_GET_2.png" format="PNG" />
+ </imageobject>
+ <textobject>
+ <phrase>
+ REST Client displays a green bar in the Response Header to signify a successful update.
+ </phrase>
+ </textobject>
+ </mediaobject>
+ </figure>
+ <para>
+ The RESTEasy workshop is now complete.
+ </para>
+ </section>
+</chapter>
+
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_Quick_Fix.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_Quick_Fix.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_Quick_Fix_2.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_Quick_Fix_2.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_Quick_Fix_Runtime.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_Quick_Fix_Runtime.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_RESTEasy.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_RESTEasy.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_menu.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Example_menu.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_Quick_Fix_Targeted_Runtimes.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_Quick_Fix_Targeted_Runtimes.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_Add_simple_to_server.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_Add_simple_to_server.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_Add_to_Server.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_Add_to_Server.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_Quick_Fix_Finish.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_Quick_Fix_Finish.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_GET_1.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_GET_1.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_GET_2.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_GET_2.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_Input.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_Input.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_PUT.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_PUT.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_selection.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/Beginners_Guide/en-US/images/Project_Examples_RESTEasy_RESTClient_selection.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: trunk/documentation/guides/Beginners_Guide/en-US/master.xml
===================================================================
--- trunk/documentation/guides/Beginners_Guide/en-US/master.xml 2010-01-27 19:51:10 UTC (rev 19969)
+++ trunk/documentation/guides/Beginners_Guide/en-US/master.xml 2010-01-28 04:43:55 UTC (rev 19970)
@@ -8,6 +8,7 @@
<!ENTITY Java_EE_and_SE SYSTEM "Java_Web_(EE)_and_Standard_Edition_(SE).xml">
<!ENTITY Service-Oriented_Architecture_Development SYSTEM "Service-Oriented_Architecture_Development.xml">
<!ENTITY Where_to_go_from_here SYSTEM "Where_to_go_from_here.xml">
+<!ENTITY Workshops SYSTEM "Workshops.xml">
<!ENTITY Revision_History SYSTEM "Revision_History.xml">
]>
@@ -71,6 +72,7 @@
&Java_EE_and_SE;
&Service-Oriented_Architecture_Development;
&Where_to_go_from_here;
+ &Workshops;
&Revision_History;
</book>
14 years, 3 months
JBoss Tools SVN: r19969 - trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation.
by jbosstools-commits@lists.jboss.org
Author: akazakov
Date: 2010-01-27 14:51:10 -0500 (Wed, 27 Jan 2010)
New Revision: 19969
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-2708
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java 2010-01-27 18:51:21 UTC (rev 19968)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java 2010-01-27 19:51:10 UTC (rev 19969)
@@ -154,8 +154,10 @@
// Get all the paths of related resources for given file. These links were saved in previous validation process.
Set<String> oldReletedResources = validationContext.getVariableNamesByCoreResource(currentFile.getFullPath(), false);
- for (String resourcePath : oldReletedResources) {
- resources.add(Path.fromOSString(resourcePath));
+ if(oldReletedResources!=null) {
+ for (String resourcePath : oldReletedResources) {
+ resources.add(Path.fromOSString(resourcePath));
+ }
}
}
}
14 years, 3 months
JBoss Tools SVN: r19968 - in trunk/ws/plugins/org.jboss.tools.ws.ui: icons/obj16 and 2 other directories.
by jbosstools-commits@lists.jboss.org
Author: bfitzpat
Date: 2010-01-27 13:51:21 -0500 (Wed, 27 Jan 2010)
New Revision: 19968
Added:
trunk/ws/plugins/org.jboss.tools.ws.ui/icons/obj16/new_webserv_wiz.gif
Removed:
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateAction.java
Modified:
trunk/ws/plugins/org.jboss.tools.ws.ui/plugin.properties
trunk/ws/plugins/org.jboss.tools.ws.ui/plugin.xml
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUI.properties
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUIMessages.java
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateSampleClassWizardPage.java
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateWebXmlWizardPage.java
trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateWizard.java
Log:
OPEN - issue JBIDE-5715: Dynamic Web Service Project Wizard
https://jira.jboss.org/jira/browse/JBIDE-5715
Added: trunk/ws/plugins/org.jboss.tools.ws.ui/icons/obj16/new_webserv_wiz.gif
===================================================================
(Binary files differ)
Property changes on: trunk/ws/plugins/org.jboss.tools.ws.ui/icons/obj16/new_webserv_wiz.gif
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:mime-type
+ application/octet-stream
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/plugin.properties
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/plugin.properties 2010-01-27 18:18:06 UTC (rev 19967)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/plugin.properties 2010-01-27 18:51:21 UTC (rev 19968)
@@ -2,4 +2,5 @@
JBOSSWS_POPUPMENU_LABEL=JBoss Tools
JBOSSWS_GENERATEACTION_LABEL=Create a Sample Web Service
PLUGIN_NAME=JBoss WebServices Tools
-PLUGIN_PROVIDER=JBoss by Red Hat
\ No newline at end of file
+PLUGIN_PROVIDER=JBoss by Red Hat
+JBOSSWS_WIZARD_DESC=Create a sample web service
\ No newline at end of file
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/plugin.xml
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/plugin.xml 2010-01-27 18:18:06 UTC (rev 19967)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/plugin.xml 2010-01-27 18:51:21 UTC (rev 19968)
@@ -7,36 +7,35 @@
id="org.jboss.tools.ws.ui.preferences.JBossWSRuntimePreferencePage">
</page>
</extension>
- <extension point="org.eclipse.ui.popupMenus">
- <objectContribution id="RedHatEclipse4Web_IProject" objectClass="org.eclipse.core.resources.IProject">
- <menu id="RedHat4Web" label="%JBOSSWS_POPUPMENU_LABEL" path="additions">
- <separator name="a">
- </separator>
- <separator name="b">
- </separator>
- <separator name="c">
- </separator>
- <separator name="d">
- </separator>
- </menu>
- <action class="org.jboss.tools.ws.ui.wizards.JBossWSGenerateAction" enablesFor="*" id="org.jboss.tools.ws.ui.wizards.JBossWSGenerateAction" label="%JBOSSWS_GENERATEACTION_LABEL" menubarPath="RedHat4Web/c">
- </action>
- </objectContribution>
+ <extension
+ point="org.eclipse.ui.newWizards">
+ <wizard
+ category="org.jboss.ide.eclipse.ui.wizards"
+ class="org.jboss.tools.ws.ui.wizards.JBossWSGenerateWizard"
+ hasPages="true"
+ icon="icons/obj16/new_webserv_wiz.gif"
+ id="org.jboss.tools.ws.ui.wizard.wsgenerate"
+ name="%JBOSSWS_GENERATEACTION_LABEL">
+ <selection
+ class="org.eclipse.core.resources.IProject">
+ </selection>
+ <description>
+ %JBOSSWS_WIZARD_DESC
+ </description>
+ </wizard>
+ <wizard
+ category="org.eclipse.jst.ws.ui.new"
+ class="org.jboss.tools.ws.ui.wizards.JBossWSGenerateWizard"
+ hasPages="true"
+ icon="icons/obj16/new_webserv_wiz.gif"
+ id="org.jboss.tools.ws.ui.wizard.wsgenerate2"
+ name="%JBOSSWS_GENERATEACTION_LABEL">
+ <selection
+ class="org.eclipse.core.resources.IProject">
+ </selection>
+ <description>
+ %JBOSSWS_WIZARD_DESC
+ </description>
+ </wizard>
</extension>
- <extension point="org.eclipse.ui.popupMenus">
- <objectContribution id="RedHatEclipse4Web_IJavaProject" objectClass="org.eclipse.jdt.core.IJavaProject">
- <menu id="RedHat4Web" label="%JBOSSWS_POPUPMENU_LABEL" path="additions">
- <separator name="a">
- </separator>
- <separator name="b">
- </separator>
- <separator name="c">
- </separator>
- <separator name="d">
- </separator>
- </menu>
- <action class="org.jboss.tools.ws.ui.wizards.JBossWSGenerateAction" enablesFor="*" id="org.jboss.tools.ws.ui.wizards.JBossWSGenerateAction" label="%JBOSSWS_GENERATEACTION_LABEL" menubarPath="RedHat4Web/c">
- </action>
- </objectContribution>
- </extension>
</plugin>
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUI.properties
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUI.properties 2010-01-27 18:18:06 UTC (rev 19967)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUI.properties 2010-01-27 18:51:21 UTC (rev 19968)
@@ -52,3 +52,4 @@
JBossWS_GenerateWizard_WizardPage_CheckButton_Label=Use the default value
JBossWS_GenerateWizard_GenerateSampleClassPage_Package_Label=Package
JBossWS_GenerateWizard_GenerateSampleClassPage_ClassName_Label=Class
+JBossWS_GenerateWizard_NotDynamicWebProject_Error=This wizard may only be used on Dynamic Web Projects.
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUIMessages.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUIMessages.java 2010-01-27 18:18:06 UTC (rev 19967)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/messages/JBossWSUIMessages.java 2010-01-27 18:51:21 UTC (rev 19968)
@@ -86,6 +86,7 @@
public static String JBossWS_GenerateWizard_WizardPage_CheckButton_Label;
public static String JBossWS_GenerateWizard_GenerateSampleClassPage_Package_Label;
public static String JBossWS_GenerateWizard_GenerateSampleClassPage_ClassName_Label;
+ public static String JBossWS_GenerateWizard_NotDynamicWebProject_Error;
static {
Deleted: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateAction.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateAction.java 2010-01-27 18:18:06 UTC (rev 19967)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateAction.java 2010-01-27 18:51:21 UTC (rev 19968)
@@ -1,94 +0,0 @@
-package org.jboss.tools.ws.ui.wizards;
-
-import java.io.File;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.jst.j2ee.project.JavaEEProjectUtilities;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowActionDelegate;
-import org.jboss.tools.ws.creation.core.commands.MergeWebXMLCommand;
-import org.jboss.tools.ws.creation.core.commands.ServiceSampleCreationCommand;
-import org.jboss.tools.ws.creation.core.data.ServiceModel;
-import org.jboss.tools.ws.ui.JBossWSUIPlugin;
-
-public class JBossWSGenerateAction implements IWorkbenchWindowActionDelegate {
- private IProject project;
- private static String WEB = "web.xml"; //$NON-NLS-1$
- private static File webFile;
-
- public void dispose() {
- }
-
- public void init(IWorkbenchWindow window) {
- }
-
- public void run(IAction action) {
- JBossWSGenerateWizard wizard = new JBossWSGenerateWizard();
-
- WizardDialog dialog = new WizardDialog(JBossWSUIPlugin.getDefault()
- .getWorkbench().getActiveWorkbenchWindow().getShell(), wizard);
- dialog.create();
- int result = dialog.open();
- if (result == WizardDialog.OK) {
- ServiceModel model = new ServiceModel();
- model.setWebProjectName(project.getName());
- model.addServiceClasses(new StringBuffer().append(
- wizard.getPackageName())
- .append(".").append(wizard.getClassName()).toString()); //$NON-NLS-1$
- model.setServiceName(wizard.getServiceName());
- model.setUpdateWebxml(true);
- model.setCustomPackage(wizard.getPackageName());
- try {
- new MergeWebXMLCommand(model).execute(null, null);
- new ServiceSampleCreationCommand(model).execute(null, null);
- } catch (ExecutionException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- }
- dialog.close();
- }
-
- public void selectionChanged(IAction action, ISelection selection) {
- if (selection instanceof IStructuredSelection) {
- project = (IProject) ((IStructuredSelection) selection)
- .getFirstElement();
- if (project != null
- && JavaEEProjectUtilities.isDynamicWebProject(project)) {
- webFile = findFileByPath(project.getLocation().toOSString());
- if (webFile != null) {
- action.setEnabled(true);
- return;
- }
- }
- }
- action.setEnabled(false);
-
- }
-
- private File findFileByPath(String path) {
- File ret = null;
- File folder = new File(path);
- if (folder.isDirectory()) {
- File[] files = folder.listFiles();
- for (File file : files) {
- ret = findFileByPath(file.getAbsolutePath());
- if (ret != null) {
- break;
- }
- }
- } else {
- if (WEB.equals(folder.getName())) {
- ret = folder;
- }
- }
- return ret;
- }
-
-}
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateSampleClassWizardPage.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateSampleClassWizardPage.java 2010-01-27 18:18:06 UTC (rev 19967)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateSampleClassWizardPage.java 2010-01-27 18:51:21 UTC (rev 19968)
@@ -1,3 +1,13 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
package org.jboss.tools.ws.ui.wizards;
import org.eclipse.jface.wizard.WizardPage;
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateWebXmlWizardPage.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateWebXmlWizardPage.java 2010-01-27 18:18:06 UTC (rev 19967)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateWebXmlWizardPage.java 2010-01-27 18:51:21 UTC (rev 19968)
@@ -1,3 +1,13 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
package org.jboss.tools.ws.ui.wizards;
import org.eclipse.jface.wizard.IWizardPage;
Modified: trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateWizard.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateWizard.java 2010-01-27 18:18:06 UTC (rev 19967)
+++ trunk/ws/plugins/org.jboss.tools.ws.ui/src/org/jboss/tools/ws/ui/wizards/JBossWSGenerateWizard.java 2010-01-27 18:51:21 UTC (rev 19968)
@@ -1,9 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
package org.jboss.tools.ws.ui.wizards;
+import java.io.File;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.jdt.internal.core.JavaProject;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jst.j2ee.project.JavaEEProjectUtilities;
+import org.eclipse.ui.INewWizard;
+import org.eclipse.ui.IWorkbench;
+import org.jboss.tools.ws.creation.core.commands.MergeWebXMLCommand;
+import org.jboss.tools.ws.creation.core.commands.ServiceSampleCreationCommand;
+import org.jboss.tools.ws.creation.core.data.ServiceModel;
import org.jboss.tools.ws.ui.messages.JBossWSUIMessages;
-public class JBossWSGenerateWizard extends Wizard {
+public class JBossWSGenerateWizard extends Wizard implements INewWizard {
private JBossWSGenerateWebXmlWizardPage firstPage;
private JBossWSGenerateSampleClassWizardPage secondPage;
@@ -17,6 +40,12 @@
private String className = CLASSDEFAULT;
private boolean useDefaultServiceName = true;
private boolean useDefaultClassName = true;
+
+ private IStructuredSelection selection;
+ private IProject project;
+ private static String WEB = "web.xml"; //$NON-NLS-1$
+ private File webFile;
+ private boolean hasInited = false;
public JBossWSGenerateWizard() {
super();
@@ -34,6 +63,22 @@
@Override
public boolean performFinish() {
+ if (canFinish()) {
+ ServiceModel model = new ServiceModel();
+ model.setWebProjectName(project.getName());
+ model.addServiceClasses(new StringBuffer().append(
+ getPackageName())
+ .append(".").append(getClassName()).toString()); //$NON-NLS-1$
+ model.setServiceName(getServiceName());
+ model.setUpdateWebxml(true);
+ model.setCustomPackage(getPackageName());
+ try {
+ new MergeWebXMLCommand(model).execute(null, null);
+ new ServiceSampleCreationCommand(model).execute(null, null);
+ } catch (ExecutionException e) {
+ e.printStackTrace();
+ }
+ }
return true;
}
@@ -77,4 +122,53 @@
this.useDefaultClassName = useDefaultClassName;
}
+ public void init(IWorkbench workbench, IStructuredSelection selection) {
+ this.selection = selection;
+
+ if (this.selection.getFirstElement() instanceof JavaProject) {
+ project = ((JavaProject)this.selection.getFirstElement()).getProject();
+ }
+ else if (this.selection.getFirstElement() instanceof IProject) {
+ project = (IProject) this.selection.getFirstElement();
+ }
+ if (project != null
+ && JavaEEProjectUtilities.isDynamicWebProject(project)) {
+ webFile = findFileByPath(project.getLocation().toOSString());
+ if (webFile != null) {
+ // TODO: if this is valid, we can finish
+ }
+ }
+ hasInited = true;
+ }
+
+ @Override
+ public boolean canFinish() {
+ if (hasInited && webFile == null ) {
+ if (firstPage != null && !firstPage.getControl().isDisposed()) {
+ firstPage.setErrorMessage(JBossWSUIMessages.JBossWS_GenerateWizard_NotDynamicWebProject_Error);
+ }
+ return false;
+ }
+ return super.canFinish();
+ }
+
+ private File findFileByPath(String path) {
+ File ret = null;
+ File folder = new File(path);
+ if (folder.isDirectory()) {
+ File[] files = folder.listFiles();
+ for (File file : files) {
+ ret = findFileByPath(file.getAbsolutePath());
+ if (ret != null) {
+ break;
+ }
+ }
+ } else {
+ if (WEB.equals(folder.getName())) {
+ ret = folder;
+ }
+ }
+ return ret;
+ }
+
}
14 years, 3 months
JBoss Tools SVN: r19967 - trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation.
by jbosstools-commits@lists.jboss.org
Author: akazakov
Date: 2010-01-27 13:18:06 -0500 (Wed, 27 Jan 2010)
New Revision: 19967
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/errorList.txt
Log:
https://jira.jboss.org/jira/browse/JBIDE-2708
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/errorList.txt
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/errorList.txt 2010-01-27 18:05:58 UTC (rev 19966)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/errorList.txt 2010-01-27 18:18:06 UTC (rev 19967)
@@ -1,10 +1,12 @@
Definition Errors
-
2.2.2. Restricting the bean types of a bean
- bean class or producer method or field specifies a @Typed annotation,
and the value member specifies a class which does not correspond to a type
in the unrestricted set of bean types of a bean
+2.4.1. Built-in scope types
+- interceptor or decorator has any scope other than @Dependent (Non-Portable behavior)
+
2.4.3. Declaring the bean scope
- bean class or producer method or field specifies multiple scope type annotations
@@ -12,11 +14,19 @@
- bean does not explicitly declare a scope when there is no default scope
(there are two different stereotypes declared by the bean that declare different default scopes)
+2.5.3. Beans with no EL name
+- interceptor or decorator has a name (Non-Portable behavior)
+
+2.6.1. Declaring an alternative
+- interceptor or decorator is an alternative (Non-Portable behavior)
+
2.7.1.1. Declaring the default scope for a stereotype
- stereotype declares more than one scope
2.7.1.3. Declaring a @Named stereotype
-- stereotype declares a non-empty @Named annotation
+- stereotype declares a non-empty @Named annotation (Non-Portable behavior)
+- stereotype declares any other qualifier annotation
+- stereotype is annotated @Typed
3.1. Managed beans
- the bean class of a managed bean is annotated with both
@@ -29,7 +39,6 @@
the bean class of another managed bean
3.2. Session beans
-
- session bean specifies an illegal scope (a stateless session bean must belong
to the @Dependent pseudo-scope; a singleton bean must belong to either the
@ApplicationScoped scope or to the @Dependent pseudo-scope, a stateful session
@@ -110,10 +119,14 @@
4.3.1. Direct and indirect specialization
- X specializes Y but does not have some bean type of Y
- X specializes Y and Y has a name and X declares a name explicitly, using @Named
+- interceptor or decorator is annotated @Specializes (Non-Portable behavior)
5.2.2. Legal injection point types
- injection point type is a type variable
+5.2.5. Qualifier annotations with members
+- array-valued or annotation-valued member of a qualifier type is not annotated @Nonbinding (Non-Portable behavior)
+
5.5.7. Injection point metadata
- bean that declares any scope other than @Dependent has an injection point of type
InjectionPoint and qualifier @Default
@@ -134,6 +147,7 @@
9.2. Declaring the interceptor bindings of an interceptor
- interceptor for lifecycle callbacks declares an interceptor binding type
that is defined @Target({TYPE, METHOD})
+- interceptor declared using @Interceptor does not declare any interceptor binding (Non-Portable behavior)
9.3. Binding an interceptor to a bean
- managed bean has a class level interceptor binding and is declared final
@@ -146,6 +160,8 @@
inherited from stereotypes and other interceptor bindings, has two instances
of a certain interceptor binding type and the instances have different values
of some annotation member
+- array-valued or annotation-valued member of an interceptor binding type
+ is not annotated @Nonbinding (Non-Portable behavior)
10.4.2. Declaring an observer method
- method has more than one parameter annotated @Observes
@@ -157,34 +173,5 @@
10.4.3. Conditional observer methods
- bean with scope @Dependent has an observer method declared receive=IF_EXISTS
-Non-Portable behavior
-
-2.4.1. Built-in scope types
-- interceptor or decorator has any scope other than @Dependent
-
-2.5.3. Beans with no EL name
-- interceptor or decorator has a name
-
-2.6.1. Declaring an alternative
-- interceptor or decorator is an alternative
-
-2.7.1.3. Declaring a @Named stereotype
-- stereotype declares any other qualifier annotation
-- stereotype is annotated @Typed
-
-4.3.1. Direct and indirect specialization
-- interceptor or decorator is annotated @Specializes
-
-5.2.5. Qualifier annotations with members
-- array-valued or annotation-valued member of a qualifier type is not annotated @Nonbinding
-
-9.2. Declaring the interceptor bindings of an interceptor
-- interceptor declared using @Interceptor does not declare any interceptor binding
-
-9.5.2. Interceptor binding types with members
-- array-valued or annotation-valued member of an interceptor binding type
- is not annotated @Nonbinding
-
12.1. Bean archives
-- bean class is deployed in two different bean archives
-
+- bean class is deployed in two different bean archives (Non-Portable behavior)
\ No newline at end of file
14 years, 3 months
JBoss Tools SVN: r19966 - trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation.
by jbosstools-commits@lists.jboss.org
Author: akazakov
Date: 2010-01-27 13:05:58 -0500 (Wed, 27 Jan 2010)
New Revision: 19966
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-2708
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java 2010-01-27 17:01:13 UTC (rev 19965)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java 2010-01-27 18:05:58 UTC (rev 19966)
@@ -25,6 +25,7 @@
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Path;
import org.eclipse.jdt.core.IMemberValuePair;
+import org.eclipse.jdt.core.IType;
import org.eclipse.jdt.core.JavaModelException;
import org.eclipse.wst.validation.internal.core.ValidationException;
import org.eclipse.wst.validation.internal.provisional.core.IReporter;
@@ -36,6 +37,7 @@
import org.jboss.tools.cdi.core.ICDIProject;
import org.jboss.tools.cdi.core.IQualifierDeclaration;
import org.jboss.tools.cdi.core.IStereotype;
+import org.jboss.tools.cdi.core.ITypeDeclaration;
import org.jboss.tools.cdi.core.preferences.CDIPreferences;
import org.jboss.tools.common.text.ITextSourceReference;
import org.jboss.tools.jst.web.kb.IKbProject;
@@ -236,11 +238,40 @@
if(name!=null) {
validationContext.addVariableNameForELValidation(name);
}
+
+ // 2.2.2. Restricting the bean types of a bean
+ // - bean class or producer method or field specifies a @Typed annotation,
+ // and the value member specifies a class which does not correspond to a type
+ // in the unrestricted set of bean types of a bean
+ Set<ITypeDeclaration> typedDeclarations = bean.getRestrictedTypeDeclaratios();
+ if(!typedDeclarations.isEmpty()) {
+ Set<ITypeDeclaration> declarations = bean.getAllTypeDeclarations();
+ for (ITypeDeclaration typedDeclaration : typedDeclarations) {
+ IType type = typedDeclaration.getType();
+ if(type!=null) {
+ boolean typeWasFound = false;
+ for (ITypeDeclaration declaration : declarations) {
+ IType dType = declaration.getType();
+ if(dType!=null && type.getFullyQualifiedName().equals(dType.getFullyQualifiedName())) {
+ typeWasFound = true;
+ break;
+ }
+ }
+ if(!typeWasFound) {
+ addError(CDIValidationMessages.ILLEGAL_TYPE_IN_TYPED_DECLARATION, CDIPreferences.ILLEGAL_TYPE_IN_TYPED_DECLARATION, typedDeclaration, bean.getResource());
+ }
+ }
+ }
+ }
// TODO
}
/**
* Validates a stereotype.
+ * 2.7.1.3. Declaring a @Named stereotype
+ * - stereotype declares a non-empty @Named annotation (Non-Portable behavior)
+ * - stereotype declares any other qualifier annotation
+ * - stereotype is annotated @Typed
*
* @param type
*/
14 years, 3 months
JBoss Tools SVN: r19965 - trunk/bpel/releng/psfs.
by jbosstools-commits@lists.jboss.org
Author: nickboldt
Date: 2010-01-27 12:01:13 -0500 (Wed, 27 Jan 2010)
New Revision: 19965
Modified:
trunk/bpel/releng/psfs/test.eclipse.cvs.psf
Log:
switch to using HEAD instead of old tag
Modified: trunk/bpel/releng/psfs/test.eclipse.cvs.psf
===================================================================
--- trunk/bpel/releng/psfs/test.eclipse.cvs.psf 2010-01-27 17:00:50 UTC (rev 19964)
+++ trunk/bpel/releng/psfs/test.eclipse.cvs.psf 2010-01-27 17:01:13 UTC (rev 19965)
@@ -3,8 +3,8 @@
<provider id="org.eclipse.team.cvs.core.cvsnature">
<!-- !*** required to run tests -->
- <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,org.eclipse.test,org.eclipse.test,v20080313"/>
- <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,org.eclipse.ant.optional.junit,org.eclipse.ant.optional.junit,v20070202"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,org.eclipse.test,org.eclipse.test,HEAD"/>
+ <project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,org.eclipse.ant.optional.junit,org.eclipse.ant.optional.junit,HEAD"/>
</provider>
</psf>
14 years, 3 months
JBoss Tools SVN: r19964 - trunk/bpel/releng/maps.
by jbosstools-commits@lists.jboss.org
Author: nickboldt
Date: 2010-01-27 12:00:50 -0500 (Wed, 27 Jan 2010)
New Revision: 19964
Modified:
trunk/bpel/releng/maps/test.eclipse.map
Log:
switch to using HEAD instead of old tag
Modified: trunk/bpel/releng/maps/test.eclipse.map
===================================================================
--- trunk/bpel/releng/maps/test.eclipse.map 2010-01-27 16:58:17 UTC (rev 19963)
+++ trunk/bpel/releng/maps/test.eclipse.map 2010-01-27 17:00:50 UTC (rev 19964)
@@ -1,3 +1,3 @@
!*** required to run tests
-plugin@org.eclipse.test=v20080313,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,
-fragment@org.eclipse.ant.optional.junit=v20070202,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,
+plugin@org.eclipse.test=HEAD,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,
+fragment@org.eclipse.ant.optional.junit=HEAD,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,
14 years, 3 months
JBoss Tools SVN: r19963 - trunk/bpel/releng.
by jbosstools-commits@lists.jboss.org
Author: nickboldt
Date: 2010-01-27 11:58:17 -0500 (Wed, 27 Jan 2010)
New Revision: 19963
Modified:
trunk/bpel/releng/testing.properties
Log:
try setting higher memory config settings for running tests
Modified: trunk/bpel/releng/testing.properties
===================================================================
--- trunk/bpel/releng/testing.properties 2010-01-27 16:32:38 UTC (rev 19962)
+++ trunk/bpel/releng/testing.properties 2010-01-27 16:58:17 UTC (rev 19963)
@@ -1,5 +1,3 @@
-#extraVMargs="-Dfoo=bar"
-
#csv list of test plugins to run
testPluginsToRun=\
org.jboss.tools.bpel.ui.test
@@ -8,3 +6,6 @@
# the test plugin to deviate from default one-suite-per-plugin operation
org.jboss.tools.bpel.ui.test.suite=org.jboss.tools.bpel.ui.test.BpelUIAllTests
+# set different defaults when running these tests
+vmargs=" -Xms512m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=256m "
+extraVMargs=" -Xbootclasspath/a:./emma.jar "
14 years, 3 months
JBoss Tools SVN: r19962 - in trunk/jsf: tests/org.jboss.tools.jsf.test/projects/JSFKickStartOldFormat and 2 other directories.
by jbosstools-commits@lists.jboss.org
Author: scabanovich
Date: 2010-01-27 11:32:38 -0500 (Wed, 27 Jan 2010)
New Revision: 19962
Added:
trunk/jsf/tests/org.jboss.tools.jsf.test/projects/JSFKickStartOldFormat/WebContent/WEB-INF/faces-config-2.xml
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsf2.meta
trunk/jsf/tests/org.jboss.tools.jsf.test/projects/JSFKickStartOldFormat/testCases.xml
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFModelTest.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-5471
Modified: trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsf2.meta
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsf2.meta 2010-01-27 16:28:29 UTC (rev 19961)
+++ trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsf2.meta 2010-01-27 16:32:38 UTC (rev 19962)
@@ -372,10 +372,6 @@
name="navigation-handler" xmlname="navigation-handler.#text">
<Editor name="AccessibleJava"/>
</XModelAttribute>
- <XModelAttribute PROPERTIES="category=general"
- name="partial-traversal" xmlname="partial-traversal.#text">
- <Editor name="AccessibleJava"/>
- </XModelAttribute>
<XModelAttribute PROPERTIES="category=general" name="view-handler" xmlname="view-handler.#text">
<Editor name="AccessibleJava"/>
</XModelAttribute>
@@ -789,6 +785,7 @@
name="validator-id" xmlname="#text">
<Editor name="AccessibleJava"/>
</XModelAttribute>
+ <XModelAttribute PROPERTIES="category=general" name="id" xmlname="id"/>
<XModelAttribute TRIM="no" name="comment" xmlname="#comment">
<Editor name="Note"/>
</XModelAttribute>
Added: trunk/jsf/tests/org.jboss.tools.jsf.test/projects/JSFKickStartOldFormat/WebContent/WEB-INF/faces-config-2.xml
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.test/projects/JSFKickStartOldFormat/WebContent/WEB-INF/faces-config-2.xml (rev 0)
+++ trunk/jsf/tests/org.jboss.tools.jsf.test/projects/JSFKickStartOldFormat/WebContent/WEB-INF/faces-config-2.xml 2010-01-27 16:32:38 UTC (rev 19962)
@@ -0,0 +1,66 @@
+<?xml version="1.0"?>
+<faces-config metadata-complete="true" version="2.0"
+ xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">
+ <name>myFacesConfig</name>
+ <behavior>
+ <description>kk</description>
+ <behavior-id>behavior1</behavior-id>
+ <behavior-class>MyBehavior</behavior-class>
+ <attribute>
+ <attribute-name>a1</attribute-name>
+ <attribute-class>MyAttribute</attribute-class>
+ </attribute>
+ <property>
+ <property-name>p1</property-name>
+ <property-class>MyProperty</property-class>
+ </property>
+ <behavior-extension/>
+ <behavior-extension/>
+ </behavior>
+ <managed-bean>
+ <managed-bean-name>a</managed-bean-name>
+ <managed-bean-class>A</managed-bean-class>
+ <managed-bean-scope>request</managed-bean-scope>
+ </managed-bean>
+ <navigation-rule>
+ <from-view-id>cc</from-view-id>
+ <navigation-case>
+ <from-outcome>aaa</from-outcome>
+ <to-view-id>/c2.jsp</to-view-id>
+ <redirect include-view-params="true">
+ <view-param>
+ <name>p1</name>
+ <value>v1</value>
+ </view-param>
+ </redirect>
+ </navigation-case>
+ </navigation-rule>
+ <absolute-ordering>
+ <name>name1</name>
+ </absolute-ordering>
+ <ordering>
+ <before>
+ <name>n3</name>
+ </before>
+ </ordering>
+ <render-kit>
+ <render-kit-id>kit</render-kit-id>
+ <client-behavior-renderer>
+ <client-behavior-renderer-type>MyClientBehaviorRendererType</client-behavior-renderer-type>
+ <client-behavior-renderer-class>MyRenderer</client-behavior-renderer-class>
+ </client-behavior-renderer>
+ </render-kit>
+ <application>
+ <resource-handler>MyResourceHandler</resource-handler>
+ <system-event-listener>
+ <system-event-listener-class>MySystemEventListener</system-event-listener-class>
+ <system-event-class>MySystemEvent</system-event-class>
+ <source-class>MySource</source-class>
+ </system-event-listener>
+ <default-validators>
+ <validator-id id="MyDefaultValidator">validator1</validator-id>
+ </default-validators>
+ </application>
+</faces-config>
Property changes on: trunk/jsf/tests/org.jboss.tools.jsf.test/projects/JSFKickStartOldFormat/WebContent/WEB-INF/faces-config-2.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/jsf/tests/org.jboss.tools.jsf.test/projects/JSFKickStartOldFormat/testCases.xml
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.test/projects/JSFKickStartOldFormat/testCases.xml 2010-01-27 16:28:29 UTC (rev 19961)
+++ trunk/jsf/tests/org.jboss.tools.jsf.test/projects/JSFKickStartOldFormat/testCases.xml 2010-01-27 16:32:38 UTC (rev 19962)
@@ -520,5 +520,71 @@
<property name="attributeValue" value="Function Example."/>
</test>
+ <!-- Test Faces Config 2.0 -->
+ <!-- @metadata-complete -->
+ <test name="JSFModelTest:testPaths:attribute">
+ <property name="path" value="/faces-config-2.xml"/>
+ <property name="attributeName" value="metadata-complete"/>
+ <property name="attributeValue" value="true"/>
+ </test>
+ <!-- <name> -->
+ <test name="JSFModelTest:testPaths:attribute">
+ <property name="path" value="/faces-config-2.xml"/>
+ <property name="attributeName" value="faces config name"/>
+ <property name="attributeValue" value="myFacesConfig"/>
+ </test>
+ <!-- <resource-handler> -->
+ <test name="JSFModelTest:testPaths:attribute">
+ <property name="path" value="/faces-config-2.xml/application"/>
+ <property name="attributeName" value="resource-handler"/>
+ <property name="attributeValue" value="MyResourceHandler"/>
+ </test>
+
+ <!-- <system-event-listener> -->
+ <test name="JSFModelTest:testPaths:attribute">
+ <property name="path" value="/faces-config-2.xml/application/MySystemEventListener"/>
+ <property name="attributeName" value="system-event-class"/>
+ <property name="attributeValue" value="MySystemEvent"/>
+ </test>
+ <test name="JSFModelTest:testPaths:attribute">
+ <property name="path" value="/faces-config-2.xml/application/MySystemEventListener"/>
+ <property name="attributeName" value="source-class"/>
+ <property name="attributeValue" value="MySource"/>
+ </test>
+
+ <!-- <behavior> -->
+ <test name="JSFModelTest:testPaths:attribute">
+ <property name="path" value="/faces-config-2.xml/Behaviors/behavior1"/>
+ <property name="attributeName" value="behavior-class"/>
+ <property name="attributeValue" value="MyBehavior"/>
+ </test>
+ <test name="JSFModelTest:testPaths:attribute">
+ <property name="path" value="/faces-config-2.xml/Behaviors/behavior1/a1"/>
+ <property name="attributeName" value="attribute-class"/>
+ <property name="attributeValue" value="MyAttribute"/>
+ </test>
+ <test name="JSFModelTest:testPaths:attribute">
+ <property name="path" value="/faces-config-2.xml/Behaviors/behavior1/p1"/>
+ <property name="attributeName" value="property-class"/>
+ <property name="attributeValue" value="MyProperty"/>
+ </test>
+ <test name="JSFModelTest:testPaths">
+ <property name="path" value="/faces-config-2.xml/Behaviors/behavior1/behavior-extension"/>
+ </test>
+
+ <!-- <default-validators> -->
+ <test name="JSFModelTest:testPaths">
+ <property name="path" value="/faces-config-2.xml/application/Default Validators"/>
+ </test>
+ <!-- <validator-id> -->
+ <test name="JSFModelTest:testPaths">
+ <property name="path" value="/faces-config-2.xml/application/Default Validators/validator1"/>
+ </test>
+ <test name="JSFModelTest:testPaths:attribute">
+ <property name="path" value="/faces-config-2.xml/application/Default Validators/validator1"/>
+ <property name="attributeName" value="id"/>
+ <property name="attributeValue" value="MyDefaultValidator"/>
+ </test>
+
</tests>
\ No newline at end of file
Modified: trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFModelTest.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFModelTest.java 2010-01-27 16:28:29 UTC (rev 19961)
+++ trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFModelTest.java 2010-01-27 16:32:38 UTC (rev 19962)
@@ -97,7 +97,21 @@
}
}
assertTrue(sb.toString(), errorCount == 0);
+
+ XModelObject o = n.getModel().getByPath("/faces-config-2.xml");
+// printPaths(o);
+
}
+
+ void printPaths(XModelObject o) {
+ if(o == null) {
+ System.out.println("null");
+ return;
+ }
+ System.out.println(o.getPath());
+ XModelObject[] cs = o.getChildren();
+ for (int i = 0; i < cs.length; i++) printPaths(cs[i]);
+ }
public void testJSFProjectStructure() {
IModelNature n = EclipseResourceUtil.getModelNature(project);
14 years, 3 months
JBoss Tools SVN: r19961 - in trunk/jbpm/plugins/org.jbpm.gd.jpdl: src/org/jbpm/gd/jpdl/wizard and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: koen.aers(a)jboss.com
Date: 2010-01-27 11:28:29 -0500 (Wed, 27 Jan 2010)
New Revision: 19961
Added:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewActionWizard.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewClassWizard.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewClassWizardPageEx.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewTypeWizardAdapter.java
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/plugin.xml
Log:
Request option for creating new jBPM actions from "File | New" menu (JBIDE-5719)
Modified: trunk/jbpm/plugins/org.jbpm.gd.jpdl/plugin.xml
===================================================================
--- trunk/jbpm/plugins/org.jbpm.gd.jpdl/plugin.xml 2010-01-27 16:21:31 UTC (rev 19960)
+++ trunk/jbpm/plugins/org.jbpm.gd.jpdl/plugin.xml 2010-01-27 16:28:29 UTC (rev 19961)
@@ -334,6 +334,19 @@
class="org.eclipse.core.resources.IResource">
</selection>
</wizard>
+ <wizard
+ name="jBPM 3 Action Handler"
+ icon="icons/full/obj16/process_definition_enabled.gif"
+ category="org.jboss.tools.jbpm"
+ class="org.jbpm.gd.jpdl.wizard.NewActionWizard"
+ id="org.jbpm.gd.jpdl.wizard.new.action">
+ <description>
+ A wizard that creates a jBPM action
+ </description>
+ <selection
+ class="org.eclipse.core.resources.IResource">
+ </selection>
+ </wizard>
</extension>
<extension
Added: trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewActionWizard.java
===================================================================
--- trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewActionWizard.java (rev 0)
+++ trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewActionWizard.java 2010-01-27 16:28:29 UTC (rev 19961)
@@ -0,0 +1,192 @@
+package org.jbpm.gd.jpdl.wizard;
+
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.jdt.core.IBuffer;
+import org.eclipse.jdt.core.ICompilationUnit;
+import org.eclipse.jdt.core.IJavaElement;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.IPackageFragment;
+import org.eclipse.jdt.core.IType;
+import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.jdt.internal.core.JavaProject;
+import org.eclipse.jdt.internal.ui.JavaPlugin;
+import org.eclipse.jdt.internal.ui.JavaPluginImages;
+import org.eclipse.jdt.ui.JavaUI;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.INewWizard;
+import org.eclipse.ui.IWorkbench;
+import org.jbpm.gd.jpdl.Logger;
+
+public class NewActionWizard extends NewClassWizard implements INewWizard {
+ static String ACTION_HANDLER_CLASS = "org.jbpm.graph.def.ActionHandler";
+ boolean openCreatedType = false;
+
+ public NewActionWizard() {
+ setDialogSettings(JavaPlugin.getDefault().getDialogSettings());
+ setWindowTitle("New jBPM Action");
+ setDefaultPageImageDescriptor(JavaPluginImages.DESC_WIZBAN_NEWCLASS);
+ }
+
+ public void addPages() {
+ super.addPages();
+ mainPage.setTitle("jBPM Action");
+ }
+
+ protected void finishPage(IProgressMonitor monitor) throws InterruptedException, CoreException {
+ mainPage.createType(monitor);
+ if(mainPage.getCreatedType() != null) {
+ modifyJavaSource();
+ }
+ }
+
+ @Override
+ public boolean performFinish() {
+ boolean b = super.performFinish();
+ if(b) {
+ if(openCreatedType) {
+ Display.getDefault().asyncExec(new Runnable(){
+ public void run() {
+ try {
+ JavaUI.openInEditor(mainPage.getCreatedType());
+ } catch (CoreException e) {
+ Logger.logError(e);
+ }
+ }
+ });
+ }
+ }
+ return b;
+ }
+
+ public void init(IWorkbench workbench, IStructuredSelection selection) {
+ IProject p = getProject(selection);
+ adapter = new NewTypeWizardAdapter(p);
+ adapter.setRawSuperClassName(ACTION_HANDLER_CLASS);
+ IPackageFragment f = getPackageFragment(selection);
+ if(f != null) {
+ String name = "";
+ IPackageFragment cf = f;
+ while(cf != null) {
+ if(name.length() == 0) {
+ name = cf.getElementName();
+ } else {
+ name = cf.getElementName() + "." + name;
+ }
+ cf = (cf.getParent() instanceof IPackageFragment) ? (IPackageFragment)cf.getParent() : null;
+ }
+ adapter.setRawPackageName(name);
+ }
+ adapter.setRawClassName("");
+ openCreatedType = true;
+ }
+
+ IProject getProject(IStructuredSelection selection) {
+ if(selection.isEmpty() || !(selection instanceof IStructuredSelection)) {
+ return null;
+ }
+ Object o = ((IStructuredSelection)selection).getFirstElement();
+ if(o instanceof IProject) {
+ return (IProject)o;
+ } else if(o instanceof IJavaElement) {
+ IJavaElement e = (IJavaElement)o;
+ return e.getJavaProject().getProject();
+ } else if(o instanceof IAdaptable) {
+ IResource r = (IResource)((IAdaptable)o).getAdapter(IResource.class);
+ return r != null ? r.getProject() : null;
+ }
+ return null;
+ }
+
+ IPackageFragment getPackageFragment(IStructuredSelection selection) {
+ if(selection.isEmpty() || !(selection instanceof IStructuredSelection)) {
+ return null;
+ }
+ Object o = ((IStructuredSelection)selection).getFirstElement();
+ if(o instanceof IPackageFragment) {
+ return (IPackageFragment)o;
+ } else if(o instanceof IFolder) {
+ IFolder f = (IFolder)o;
+ IJavaElement jp = JavaCore.create(f);
+ if(jp instanceof IPackageFragment) {
+ return (IPackageFragment)jp;
+ }
+ }
+ return null;
+ }
+
+ void modifyJavaSource() {
+// String newValue = getQualifiedClassName();
+ try {
+ IType type = mainPage.getCreatedType();
+ if(type == null) {
+ return;
+ }
+ String name = type.getElementName();
+ String sc = type.getSuperclassTypeSignature();
+
+ ICompilationUnit w = type.getCompilationUnit().getWorkingCopy(new NullProgressMonitor());
+ IBuffer b = w.getBuffer();
+ String s = b.getContents();
+ String lineDelimiter = "\r\n";
+
+ String IMPORT = "import " + ACTION_HANDLER_CLASS + ";";
+ int i1 = s.indexOf(IMPORT);
+ if(i1 >= 0) {
+ if(i1 >= 0) {
+ String content = "";
+ String[] imports = {
+ "import org.jbpm.graph.exe.ExecutionContext;",
+ };
+ for (String is: imports) {
+ if(s.indexOf(is) < 0) {
+ content += lineDelimiter + is;
+ }
+ }
+ if(content.length() > 0) {
+ b.replace(i1 + IMPORT.length(), 0, content);
+ }
+ }
+
+ s = b.getContents();
+
+ int i = s.indexOf('{');
+ int j = s.lastIndexOf('}');
+
+ if(i > 0 && j > i) {
+ String tab = "\t";
+ String content = lineDelimiter
+ + lineDelimiter
+ + tab + "private static final long serialVersionUID = 1L;" + lineDelimiter
+ + lineDelimiter
+ + tab + "/**" + lineDelimiter
+ + tab + "* The message member gets its value from the configuration in the" + lineDelimiter
+ + tab + "* processdefinition. The value is injected directly by the engine." + lineDelimiter
+ + tab + "*/" + lineDelimiter
+ + tab + "String message;" + lineDelimiter
+ + lineDelimiter
+ + tab + "/**" + lineDelimiter
+ + tab + "* A message process variable is assigned the value of the message" + lineDelimiter
+ + tab + "* member. The process variable is created if it doesn't exist yet." + lineDelimiter
+ + tab + "*/" + lineDelimiter
+ + tab + "public void execute(ExecutionContext context) throws Exception {" + lineDelimiter
+ + tab + tab + "//ADD CUSTOM ACTION CODE HERE" + lineDelimiter
+ + tab + tab + "//context.getContextInstance().setVariable(\"message\", message);" + lineDelimiter
+ + tab + "}" + lineDelimiter
+ + lineDelimiter;
+ b.replace(i + 1, j - i - 1, content);
+ w.commitWorkingCopy(true, new NullProgressMonitor());
+ }
+ }
+ } catch (CoreException e) {
+ Logger.logError(e);
+ }
+ }
+
+}
Property changes on: trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewActionWizard.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewClassWizard.java
===================================================================
--- trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewClassWizard.java (rev 0)
+++ trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewClassWizard.java 2010-01-27 16:28:29 UTC (rev 19961)
@@ -0,0 +1,104 @@
+/*******************************************************************************
+ * Copyright (c) 2007 Exadel, Inc. and Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Exadel, Inc. and Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jbpm.gd.jpdl.wizard;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.core.resources.IWorkspaceRunnable;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.OperationCanceledException;
+import org.eclipse.core.runtime.jobs.ISchedulingRule;
+import org.eclipse.jdt.core.IType;
+import org.eclipse.jdt.internal.ui.*;
+import org.eclipse.jdt.internal.ui.actions.*;
+import org.eclipse.jdt.internal.ui.wizards.*;
+import org.eclipse.jface.wizard.Wizard;
+import org.jbpm.gd.jpdl.Logger;
+
+/**
+ * @author au
+ */
+
+public class NewClassWizard extends Wizard {
+
+ protected NewTypeWizardAdapter adapter = null;
+ protected NewClassWizardPageEx mainPage;
+
+ public NewClassWizard() {
+ setDialogSettings(JavaPlugin.getDefault().getDialogSettings());
+ setWindowTitle(NewWizardMessages.NewClassCreationWizard_title);
+ setDefaultPageImageDescriptor(JavaPluginImages.DESC_WIZBAN_NEWCLASS);
+ }
+
+ public void setAdapter(NewTypeWizardAdapter adapter) {
+ this.adapter = adapter;
+ }
+
+ public NewClassWizard(NewTypeWizardAdapter adapter) {
+ this();
+ setAdapter(adapter);
+ }
+
+ public void addPages() {
+ mainPage = new NewClassWizardPageEx();
+ addPage(mainPage);
+ if (adapter!=null) mainPage.init(adapter);
+ }
+
+ /**
+ * @return
+ */
+ public String getClassName() {
+ return this.mainPage.getTypeName();
+ }
+
+ public String getQualifiedClassName() {
+ String c = mainPage.getTypeName();
+ String p = mainPage.getPackageText();
+ if(p != null && p.length() > 0) c = p + "." + c; //$NON-NLS-1$
+ return c;
+ }
+
+ protected void finishPage(IProgressMonitor monitor) throws InterruptedException, CoreException {
+ mainPage.createType(monitor); // use the full progress monitor
+ }
+
+ protected boolean canRunForked() {
+ return true;
+ }
+
+ protected ISchedulingRule getSchedulingRule() {
+ return ResourcesPlugin.getWorkspace().getRoot(); // look all by default
+ }
+
+ public boolean performFinish() {
+ IWorkspaceRunnable op= new IWorkspaceRunnable() {
+ public void run(IProgressMonitor monitor) throws CoreException, OperationCanceledException {
+ try {
+ finishPage(monitor);
+ } catch (InterruptedException e) {
+ throw new OperationCanceledException(e.getMessage());
+ }
+ }
+ };
+ try {
+ getContainer().run(canRunForked(), true, new WorkbenchRunnableAdapter(op, getSchedulingRule()));
+ } catch (InvocationTargetException e) {
+ Logger.logError(e);
+ return false;
+ } catch (InterruptedException e) {
+ return false;
+ }
+ return true;
+ }
+}
Property changes on: trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewClassWizard.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewClassWizardPageEx.java
===================================================================
--- trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewClassWizardPageEx.java (rev 0)
+++ trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewClassWizardPageEx.java 2010-01-27 16:28:29 UTC (rev 19961)
@@ -0,0 +1,54 @@
+/*******************************************************************************
+ * Copyright (c) 2007 Exadel, Inc. and Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Exadel, Inc. and Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jbpm.gd.jpdl.wizard;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.jdt.ui.wizards.NewClassWizardPage;
+
+/**
+ * @author au
+ */
+public class NewClassWizardPageEx extends NewClassWizardPage {
+
+ private NewTypeWizardAdapter adapter = null;
+
+ public NewClassWizardPageEx() {
+ super();
+ }
+
+ public void init(NewTypeWizardAdapter adapter) {
+ this.adapter = adapter;
+ setPackageFragmentRoot(adapter.getPackageFragmentRoot(), adapter.isCanBeModified());
+ setPackageFragment(adapter.getPackageFragment(), adapter.isCanBeModified());
+ setEnclosingType(adapter.getEnclosingType(), adapter.isCanBeModified());
+ setEnclosingTypeSelection(adapter.getEnclosingTypeSelection(), adapter.isCanBeModified());
+ setTypeName(adapter.getTypeName(), adapter.isCanBeModified());
+ if (adapter.getSuperClass()!=null && adapter.getSuperClass().length()>0) {
+ setSuperClass(adapter.getSuperClass(), adapter.isCanBeModified());
+ }
+ if (adapter.getSuperInterfaces()!=null) {
+ setSuperInterfaces(adapter.getSuperInterfaces(), adapter.isCanBeModified());
+ }
+ setMethodStubSelection(false, adapter.isCreateConstructors(),
+ adapter.isCreateInherited(), adapter.isCanBeModified());
+ }
+
+ public void setVisible(boolean visible) {
+ super.setVisible(visible);
+ // policy: wizards are not allowed to come up with an error message;
+ // in this wizard, some fields may need initial validation and thus,
+ // potentially start with an error message.
+ IStatus classNameStatus = adapter.getClassNameStatus();
+ if (classNameStatus !=null && !classNameStatus.isOK()) updateStatus(classNameStatus);
+ IStatus packageNameStatus = adapter.getPackageNameStatus();
+ if (packageNameStatus != null && !packageNameStatus.isOK()) updateStatus(packageNameStatus);
+ }
+}
Property changes on: trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewClassWizardPageEx.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewTypeWizardAdapter.java
===================================================================
--- trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewTypeWizardAdapter.java (rev 0)
+++ trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewTypeWizardAdapter.java 2010-01-27 16:28:29 UTC (rev 19961)
@@ -0,0 +1,267 @@
+/*******************************************************************************
+ * Copyright (c) 2007 Exadel, Inc. and Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Exadel, Inc. and Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jbpm.gd.jpdl.wizard;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.IPackageFragment;
+import org.eclipse.jdt.core.IPackageFragmentRoot;
+import org.eclipse.jdt.core.IType;
+import org.eclipse.jdt.core.JavaConventions;
+import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.jdt.core.JavaModelException;
+import org.jbpm.gd.jpdl.Logger;
+
+/**
+ * @author au
+ */
+
+public class NewTypeWizardAdapter {
+ // common data
+ private IJavaProject javaProject;
+ private IProject project;
+ private boolean rawData = Boolean.TRUE.booleanValue();
+ private boolean createMain = Boolean.TRUE.booleanValue();
+ private boolean createConstructors = Boolean.TRUE.booleanValue();
+ private boolean createInherited = Boolean.TRUE.booleanValue();
+ private boolean canBeModified = Boolean.TRUE.booleanValue();
+ private IStatus classNameStatus;
+ private IStatus packageNameStatus;
+
+ // raw data
+// private String rawInterfaceName;
+ private HashSet<String> rawInterfaces = new HashSet<String>();
+
+ // adapted data
+// private IType superClassType;
+ private String superClassName;
+// private IType interfaceType;
+// private String interfaceName;
+ private String className;
+// private String classArgs;
+ private String packageName;
+ private IPackageFragmentRoot packageFragmentRoot;
+ private IPackageFragment packageFragment;
+ private ArrayList<String> interfaces = new ArrayList<String>();
+
+
+ private NewTypeWizardAdapter() {}
+
+ // Interface for us
+
+ public NewTypeWizardAdapter(IProject project) {
+ if(project != null) try {
+ this.javaProject = (IJavaProject)project.getNature(JavaCore.NATURE_ID);
+ } catch (CoreException e) {
+ Logger.logError(e);
+ }
+ this.project = project;
+ }
+
+ public void setRawClassName(String rawClassName) {
+ this.rawData = Boolean.TRUE.booleanValue();
+ this.className = rawClassName;
+ }
+
+ public void setRawSuperClassName(String rawSuperClassName) {
+ this.rawData = Boolean.TRUE.booleanValue();
+ this.superClassName = rawSuperClassName;
+ }
+
+ public void setRawPackageName(String rawPackageName) {
+ this.rawData = Boolean.TRUE.booleanValue();
+ this.packageName = rawPackageName;
+ }
+
+ public void addRawInterfaceName(String rawInterfaceName) {
+ this.rawData = Boolean.TRUE.booleanValue();
+ this.rawInterfaces.add(rawInterfaceName);
+ }
+
+ public void setCanBeModified(boolean canBeModified) {
+ this.canBeModified = canBeModified;
+ }
+
+ public void setCreateConstructors(boolean createConstructors) {
+ this.createConstructors = createConstructors;
+ }
+
+ public void setCreateInherited(boolean createInherited) {
+ this.createInherited = createInherited;
+ }
+
+ public void setCreateMain(boolean createMain) {
+ this.createMain = createMain;
+ }
+
+ // doAdapted
+
+ private void doAdapted() {
+ // source folder name, package name, class name
+ int loc = className.indexOf(":"); //$NON-NLS-1$
+ if (loc != -1) {
+ if (loc < className.length()) {
+// classArgs = className.substring(loc + 1, className.length());
+ className = className.substring(0, loc);
+ }
+ if (loc > 0)
+ className = className.substring(0, loc);
+ else if (loc == 0)
+ className = ""; //$NON-NLS-1$
+ }
+ classNameStatus = JavaConventions.validateJavaTypeName(className);
+
+ loc = className.lastIndexOf('.');
+ if (loc != -1) {
+ packageName = className.substring(0, loc);
+ className = className.substring(loc + 1);
+ packageNameStatus = JavaConventions.validatePackageName(packageName);
+ classNameStatus = JavaConventions.validateJavaTypeName(className);
+ }
+ if (javaProject == null)
+ return;
+ try {
+ if (packageFragmentRoot == null) {
+ IPackageFragmentRoot srcEntryDft = null;
+ IPackageFragmentRoot[] roots = javaProject.getPackageFragmentRoots();
+ for (int i = 0; i < roots.length; i++) {
+ if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) {
+ srcEntryDft = roots[i];
+ break;
+ }
+ }
+ if (srcEntryDft != null)
+ packageFragmentRoot = srcEntryDft;
+ else {
+ packageFragmentRoot = javaProject.getPackageFragmentRoot(javaProject.getResource());
+ }
+ if (packageFragment == null
+ && packageFragmentRoot != null
+ && packageName != null
+ && packageName.length() > 0) {
+ IFolder packageFolder = project.getFolder(packageName);
+ packageFragment = packageFragmentRoot
+ .getPackageFragment(packageFolder
+ .getProjectRelativePath().toOSString());
+ }
+ }
+ // superclass and interface
+ if (this.rawInterfaces != null && this.rawInterfaces.size()>0) {
+ Iterator i = this.rawInterfaces.iterator();
+ this.interfaces.clear();
+ while (i.hasNext()) {
+ String _interface = (String)i.next();
+ // check interface name
+ this.interfaces.add(_interface);
+ }
+ }
+ if (this.superClassName !=null && this.superClassName.length()>0) {
+ // check super class
+ }
+
+ rawData = Boolean.FALSE.booleanValue();
+ } catch (JavaModelException e) {
+ Logger.logError(e);
+ }
+ }
+
+/*
+ private IType findTypeForName(String typeName) throws JavaModelException {
+ if (typeName == null || typeName.length() == 0)
+ return null;
+ IType type = null;
+ String fileName = typeName.replace('.', '/') + ".java"; //$NON-NLS-1$
+ IJavaElement element = javaProject.findElement(new Path(fileName));
+ if (element == null)
+ return null;
+ if (element instanceof IClassFile) {
+ type = ((IClassFile) element).getType();
+ } else if (element instanceof ICompilationUnit) {
+ IType[] types = ((ICompilationUnit) element).getTypes();
+ type = types[0];
+ }
+ return type;
+ }
+*/
+
+ // Interface for NewClassWizardPage
+
+ public IPackageFragmentRoot getPackageFragmentRoot() {
+ if (rawData) doAdapted();
+ return this.packageFragmentRoot;
+ }
+
+ public IPackageFragment getPackageFragment() {
+ if (rawData) doAdapted();
+ return this.packageFragment;
+ }
+
+ public IType getEnclosingType() {
+ if (rawData) doAdapted();
+ return null;
+ }
+
+ public boolean getEnclosingTypeSelection() {
+ if (rawData) doAdapted();
+ return Boolean.FALSE.booleanValue();
+ }
+
+ public String getTypeName() {
+ if (rawData) doAdapted();
+ return this.className;
+ }
+
+ public String getSuperClass() {
+ if (rawData) doAdapted();
+ return this.superClassName;
+ }
+
+ public List getSuperInterfaces() {
+ if (rawData) doAdapted();
+ return this.interfaces;
+ }
+
+ public boolean isCreateMain() {
+ if (rawData) doAdapted();
+ return this.createMain;
+ }
+
+ public boolean isCreateConstructors() {
+ if (rawData) doAdapted();
+ return this.createConstructors;
+ }
+
+ public boolean isCreateInherited() {
+ if (rawData) doAdapted();
+ return this.createInherited;
+ }
+
+ public boolean isCanBeModified() {
+ if (rawData) doAdapted();
+ return this.canBeModified;
+ }
+
+ public IStatus getClassNameStatus() {
+ return classNameStatus;
+ }
+
+ public IStatus getPackageNameStatus() {
+ return packageNameStatus;
+ }
+}
Property changes on: trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/jpdl/wizard/NewTypeWizardAdapter.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
14 years, 3 months