[ https://issues.apache.org/jira/browse/TAP5-1490?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Igor Drobiazko reassigned TAP5-1490: ------------------------------------ Assignee: Igor Drobiazko > Eclipse WTP based Tapestry visual editor project proposal > ----------------------------------------------------------- > > Key: TAP5-1490 > URL: https://issues.apache.org/jira/browse/TAP5-1490 > Project: Tapestry 5 > Issue Type: Task > Environment: Eclipse in all OS > Reporter: Gavin Lei > Assignee: Igor Drobiazko > Labels: gsoc, gsoc2011, mentor > Original Estimate: 1680h > Remaining Estimate: 1680h > > Introduction > Apache Tapestry supplies powerful component structure, and it offered a > number of other powerful features that proved to be critical in our work. > The Eclipse Web Tools Platform (WTP) project extends the Eclipse platform > with tools for developing Web and Java EE applications. It includes source > and graphical editors for a variety of languages, wizards and built-in > applications to simplify development, and tools and APIs to support > deploying, running, and testing apps.WTP supplies Web Page Editor for us to > edit HTML page, JSP page and JSF-JSP web page. > Tapestry was used widely nowadays, it allowed a clean separation between Java > and HTML, and made it possible for the design work on the application to > continue well after the code had been completed, It is becoming more and more > popular today. But we can not find a proper Tapestry visual editor, Eclipse > WTP is popular in Web application development, but it is a shame that Eclipse > WTP does not support Tapestry, so i think it is a good idea to build a > Tapestry visual editor on Eclipse WTP. > This editor should have following mainly functions: > Note GSoC supplies us only 3 months to finish our project, so this project > will focus on Tapestry 5, after that, if we have enough time, will supply > other Tapestry version support > Must have functions > 1. Tapertry libraries import wizard > Add necessary Tapestry 5 relative jars into web project. > 2. Tapestry page/component creation wizard > It will supply a wizard helping us to create the .tml file and .java file > together for a Tapestry page/component. > 3. Add Tapestry component support for WTP web editor palette > If we open a Tapestry page/component with WTP Web Page Editor, its palette > will contains three main section, HTML,Tapestry core and Tapestry custom > component. Then, we can drap-and-drop the components in the palette to the > canvas. WTP web editor supplies property view for us already, we can improve > the property to support Tapestry component. In Tapestry Core section, it > includes Tapestry standard components, Foreach, Insert,Image,Conditional, > Form components and the other standard components. > NOTE Eclipse WTP supplies relative interface for us to change palette > components > 4. Add convenient way for the Web Page Editor to change-over between a > Tapestry page's .tml file and .java file > 5. Add Tapestry built in and custom components autocomplete function for WTP > Web Page Editor's source view > If we add component insert code, such as > <span jwcid="@Insert"/> > ,So when you type > <span jwcid="@ > it comes up with a list you can choose from and then completes it with the > required parameters listed. > 6.Tapestry component's parameters property view > We select a component in canvas design view or source view, the Eclipse > property view will list this component's parameters and we can edit the > parameters here. > 7.Autocomplete of properties from the .java page when editing the .tml file > In the Source Page of the Web Page Editor, add the Tapestry tag, (for example > ${prop:index}). With the cursor inside the brackets, hit Ctrl+spacebar, > should see a pop-up with a list of all the available properties defined in > the corresponding java class. > Optional features > 8. Validation function in Tapestry .tml file source view > Beyond the basic JSP validation already provided with the JSP editor, this > editor supplies semantic validation of the Tapestry standard tag libraries > for both EL and non-EL attribute values. > 9. Hyperlink function in Tapestry .tml file source view > Hyperlink to the Java editor from Managed Bean variable, Managed Bean > property and Managed Bean method referenced in the Expression Language(EL) of > a tag-attribute. > I have finished some research job and familiar with Eclipse WTP source code, > so i think it is definitely for us to finish function 1-7 during this summer. > Function 8 and 9 are more complex and not so necessary, so i mark them as > optional features. Once i finished must-have functions development job, i > will start option features job. > Online design demo > You can go here[1] to see project proposal details with picture demos. > [1] http://visual-tapestry.appspot.com/ -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira