Java Industry News
Sneak Peek: Tapestry Palette - My First Eclipse Plugin
Sneak Peek: Tapestry Palette - My First Eclipse Plugin
Sep. 22, 2004 12:00 AM
In working with Tapestry I find myself getting confused by the number of
components and their parameters, even when using the excellent Spindle plugin. I
haven't written an Eclipse
plugin yet so I put together a plugin, building on the Spindle classes to browse
the components available in my project.
plugin adds a new view the 'Palette' to Eclipse. The image below shows the
Palette on the left of the source code editor area (click on the image to see a
The Palette consists of a tree of Tapestry components, organized by
namespace. Selecting a component in the tree displays a summary in the lower
part of the view showing the component description and listing required and
optional parameters along with their descriptions.Once I got this far I looked into using the Palette as a source
for component editing data. I reviewed the Eclipse drag and drop API and eclipse
extensions for adding drag and drop functionality to existing views and editors.
I was able to add drop functionality to the Spindle TemplateEditor so that
dragging a component out of the Palette onto the editor inserts a <span>
tag with an implicit component declaration, including attributes for required
parameters at the current insertion point (you have to click in the editor at
the point at which you want the component declaration to be inserted). If a
range of text is selected and the dragged component allows a body the span will
wrap the selection, otherwise an error dialog appears. Warning: The drop/editing code works on Linux but not
on Mac OS X.This is my first cut at the
plugin, there is only minimal error checking. The Palette requires that a
Tapestry project (created with Spindle) is the current project and there is at
least one open source code editor in the workspace when the Palette is opened.
It refreshes too often and there are some issues with resizing the
view.The plugin requires that the Spindle plugin is
installed.Download the plugin: tapestry-palette-0.01.zip
Unzip in your Eclipse install directory and
restart Eclipse. To open the Palette use the
Window > Show View > Other > Tapestry > Palette menu. Make sure a
Tapestry project is the current project and at least one editor window is
I'd like to add support for adding component
declarations to the specification file, a wizard for setting component id and
parameter values and support for inserting tags other than <span> for
certain components, such as <input> tags for components representing form
Many of the components, especially
in the contrib library are missing descriptions and many components, have no
descriptions for their parameters.
working on getting the drag and drop working on Mac OS X so I can work on this
on my powerbook.
Reader Feedback: Page 1 of 1
The palette has matured since this article was written, visit the SourceForge site at :
to see the new features. Now you can download and installTapestry component libraries via drag and drop
Subscribe to the World's Most Powerful Newsletters
ChatOps is an emerging topic that has led to the wide availability of integrations between group cha...
Feb. 19, 2018 03:00 PM EST Reads: 6,496
In his keynote at 18th Cloud Expo, Andrew Keys, Co-Founder of ConsenSys Enterprise, provided an over...
Feb. 19, 2018 12:00 PM EST Reads: 8,016
The cloud era has reached the stage where it is no longer a question of whether a company should mig...
Feb. 19, 2018 08:30 AM EST Reads: 7,706
You know you need the cloud, but you’re hesitant to simply dump everything at Amazon since you know ...
Feb. 19, 2018 04:00 AM EST Reads: 3,227
Coca-Cola’s Google powered digital signage system lays the groundwork for a more valuable connection...
Feb. 19, 2018 01:45 AM EST Reads: 3,835
In his session at 21st Cloud Expo, Raju Shreewastava, founder of Big Data Trunk, provided a fun and ...
Feb. 19, 2018 01:00 AM EST Reads: 3,087
The need for greater agility and scalability necessitated the digital transformation in the form of ...
Feb. 18, 2018 06:45 PM EST Reads: 869
As DevOps methodologies expand their reach across the enterprise, organizations face the daunting ch...
Feb. 18, 2018 11:00 AM EST Reads: 2,300
While some developers care passionately about how data centers and clouds are architected, for most,...
Feb. 18, 2018 11:00 AM EST Reads: 2,756
"Since we launched LinuxONE we learned a lot from our customers. More than anything what they respon...
Feb. 18, 2018 08:45 AM EST Reads: 2,706
Is advanced scheduling in Kubernetes achievable?Yes, however, how do you properly accommodate every ...
Feb. 18, 2018 02:30 AM EST Reads: 2,907
DevOps is under attack because developers don’t want to mess with infrastructure. They will happily ...
Feb. 17, 2018 10:00 PM EST Reads: 2,679
"As we've gone out into the public cloud we've seen that over time we may have lost a few things - w...
Feb. 17, 2018 12:45 PM EST Reads: 5,098
In his session at 21st Cloud Expo, Michael Burley, a Senior Business Development Executive in IT Ser...
Feb. 17, 2018 09:00 AM EST Reads: 3,314
Sanjeev Sharma Joins June 5-7, 2018 @DevOpsSummit at @Cloud Expo New York Faculty. Sanjeev Sharma is...
Feb. 16, 2018 10:15 PM EST Reads: 7,362
We are given a desktop platform with Java 8 or Java 9 installed and seek to find a way to deploy hig...
Feb. 15, 2018 01:00 PM EST Reads: 646
"I focus on what we are calling CAST Highlight, which is our SaaS application portfolio analysis too...
Feb. 15, 2018 12:15 PM EST Reads: 3,318
"Cloud4U builds software services that help people build DevOps platforms for cloud-based software a...
Feb. 15, 2018 11:45 AM EST Reads: 2,640
The question before companies today is not whether to become intelligent, it’s a question of how and...
Feb. 15, 2018 07:45 AM EST Reads: 3,731
Kubernetes is an open source system for automating deployment, scaling, and management of containeri...
Feb. 14, 2018 01:00 PM EST Reads: 3,144