Dear Wiki user, You have subscribed to a wiki page or wiki category on "Tapestry Wiki" for change notification.
The following page has been changed by ErikVullings: http://wiki.apache.org/tapestry/SuccessStories ------------------------------------------------------------------------------ = Tapestry Success Stories = Come on you lurkers! Post your stories here! - * ChoosingTapestry - * MovingToTapestry - - == SOLIS == - - [http://www.nemesisit.ro/products/erp-en.html SOLIS] is a CRM and sales management system for distributors, which integrates the supply-offering-order-shippment-billing chain of operations. A demo is also available [http://devel.nemesisit.ro/vanzari online here]. - - Tapestry framework was essencial in creating a web interface based enterprise application with complex workflow and business logic. Even though the learning curve is steep, the long term benefits of using Tapestry in a complex application worth the inital effort. The framework is robust (more robust than jsps for instance) and maintanance and updates tasks take minimum time. The code is highly reusable and maintainable. Integration with Jasper Reports for accessing documents and reports from the web interface was straight forward and with excelent performance results. Our main leader for Tapestry development is Marilen Corciovei ([EMAIL PROTECTED]) - - SOLIS was built by [http://www.nemesisit.ro Nemesis IT], a software company from Bucharest, Romania. Our team leader for Tapestry development is Marilen Corciovei ([EMAIL PROTECTED]). - - Technologies used: Tapestry Framework, Hibernate, Jasper Reports, Jakarta Tomcat, Postgresql and Oracle implementations. - - == DocsDB/4 == - DocsDB/4 is a professional relational document management, workflow and archiving system through a web-based interface. See http://www.docsdb.com - - Tapestry is a very powerful, practical and well build framework on which our entire DocsDB/4 web application is based. DocsDB/4 is a real heavy-duty web application, performance, maintainability and concurrency are very important and Tapestry helps in every way. DocsDB/4 consists of many pages with 90% dynamic content, complex business logic and huge forms, nothing like a regular web page. - - Developing web applications with Tapestry felt like home for the Java and HTML programmers because of the strict separation of the presentation and the business layers. All other aspects of Tapestry, especially the component-based architecture, make up for clean, reusable and maintainable code! Tapestry is nothing like we ever experienced before developing a web application! - - - == TheServerSide.com == - - As of a couple of weeks ago, [http://theserverside.com TheServerSide.com] (as well as !TheServerSide.net) are running on Tapestry and HiveMind. The work was done by myself, Howard Lewis Ship. The majority of users - did not see a difference, beyond a few refinements to the UI here and there. - - Performance has been excellent, though a true before and after comparison would not be possible, since the backend database access changed from WebLogic CMP entity beans to Solarmetric Kodo JDO at the same time. Additionally, the application runs entirely stateless (no !HttpSession), though a good bit of state is stored in hidden form fields. - - It was primarily a one-man job; the bulk of the effort was dealing with the backlog of existing JSPs containing content (such as articles, interviews, and so forth). In many cases, these had to be converted into partial HTML files that are included as part of a Tapestry page. - - The client is completely thrilled by the end results, in terms of performance and the promise of vastly improved functionality. Expect to see more detailed reports on !TheServerSide.com. - - == partnermine.com == - - '''[http://partnermine.com/ partnermine.com]''' is a new dating site with the goal to stand out of the jungle of bad dating sites that are out there. Due to the nature of our very detailed user profiles and search engine we were faced with rather big HTML forms that even repeated in large parts on three or more pages. We started out with Struts because it sounded like the standard tool for the job, but it was such a pain, and the amount of duplicate and dumb glue code was just not standable. Maintainability would have been near to impossible without introducing errors. When we looked for alternatives Tapestry quickly became our favourite and soon after the winner, especially because of the brilliant component model that helped us to separate our pages into reusable parts, and we are well rid of duplicate code - we edit once and it changes everywhere. - - It took us maybe 3-4 weeks to get properly into Tapestry and convert all our old Struts code to Tapestry. It was quite a learning curve (though the Struts one wasn't exactly fun either) and threw us apparently(!!) back by a month. But I'm certain that in the end it helped us to reduce total development time. We have such a beautifully clean project now - and it's easily maintainable too! It's just a pleasure to work with it and I don't even want to think of the nightmares that Struts or similar frameworks would have given us if we had gone the full way with them. - - We are very happy with the efficiency and productivity Tapestry gives us, and feel that other frameworks would have required considerably more time and/or staff to accomplish what we have now. - - So, if you're in the process of evaluating what tool is the best for you, come to '''[http://partnermine.com/ partnermine.com]''', have a look around, and enjoy the wonderful world of Tapestry. == Intellidos Limited == @@ -116, +75 @@ A demo of our products can be found on our website at '''[http://www.intellidos.com www.intellidos.com]''' - - - == Thomson - Compu-Mark == - - At Compu-Mark, we started using Tapestry as our default web framework for all our on-line services in August 2003. - We first did an evaluation on the available/popular frameworks, and the refreshing new concept (using components) of Tapestry made us decide to use it. - - The project on which we used it first, was composed out of 3 developers of which none had prior experience with Java nor web-development. They were all experienced C++ developers. Learning to do web-development in Java was expected to be a challenge, but in fact Tapestry lowered to barrier: there is HTML to do the layout, and there is Java to do the logic. Of course, some experience needed to be build up in wiring it together. - - By now, 4 Tapestry-based B2B applications are launched with success. - If we had to choose a web-framework again, it would again be Tapestry. - - Thanks Howard! - - - - == US International Trade Commission EDIS Search Application == - - I had known of Tapestry for over a year when I found myself in the lead position on the ground floor of a project for the USITC. The two sub-projects were - * A back-end content feed system for moving public documents to a Web server and indexing them along with their meta-data in a search engine - * A public Web front-end for the above-mentioned search engine - - Initially, the assumption was that another experienced developer would handle the back-end system alone and I would work with a junior (I don't like such titles, but it's easier than typing ''less-experienced'') developer to create the Web app. It is worth mentioning that this would have been a mentoring effort for me as the junior developer had '''''absolutely no professional Java experience'''''. - - I had initially dismissed Tapestry due to the apparent steep learning curve. However, after an unsuccessful attempt at using [http://www.opensymphony.com/webwork/ WebWork], I decided to experiment with Tapestry by asking the junior developer to go through Kent Tong's excellent ''[http://www.agileskills2.org/EWDT Getting Started with Tapestry]'' Tutorial. Not only did he get through the tutorial just fine, but I made some encouraging observations: - - 1. '''He was having fun.''' I frequently caught this otherwise highly-composed imperturbable man exclaiming "Yes!" upon a successful mouse-click. - 2. '''He took personal initiative in his work.''' He figured out how to set up a Tapestry environment in Eclipse using Spindle and began development of our production app without a break after working on the tutorial for only 2 or 3 days. - 3. '''He became resourceful.''' After purchasing [http://www.amazon.com/exec/obidos/tg/detail/-/1932394117/103-7792846-6517465?v=glance Tapestry in Action], he actually created his own custom component and got on with form field validation with little to no assistance. - 4. '''He cleanly integrated with the search engine.''' We exposed the search engine's API calls as [http://www.springframework.org/ Spring] beans. The distinction between the controller and model could not be clearer. I cannot even think of how the line between these could be blurred. - - As it happened, in less than 3 weeks the back-end task turned out to be a great deal more complex and demanding than initially anticipated. So, I had to focus almost 100% of my time on it and the junior developer was tasked with making a solo attempt at creating the front end. - - He did it. The project has been a resounding success. - - Tapestry components just work - no questions asked. I disagree with the statements alluding to a steep and time-consuming learning curve. Tapestry is markedly different from [http://struts.apache.org/ Struts] or [http://www.opensymphony.com/webwork/ WebWork], which are perhaps more intuitive as they resemble extensions of the application-level protocol (HTTP) of the TCP stack. However, we have found great advantage in using a framework which is divorced from this paradigm. We did not have to come up with any unexpected or unnatural extensions, and a single consistent development pattern facilitated productivity and developer communication. - - It would be unfair to credit our success exclusively to Tapestry and leave the brilliance, talent and work ethic of our junior developer unrecognized. However, I sincerely believe that the choice of Tapestry was catalytic in activating these attributes. This is invaluable to someone like me, to whom software development is a people-centric endeavor. - - Our client is sold on Tapestry as well, and it will be a key tool in our organization's efforts going forward. You may have a look at our application [http://searchapp.usitc.gov/edis3 here]. - - Regards, - - Atif Faridi - - - == Greek Chess Federation == - - As of 1/7/2005, the managing and rating system of Greek Chess Federtation is based on Tapestry. - - It's a system responsible for >30000 chess players and >400 clubs and for calculating their ratings. - It manages the >200 tournaments and >13000 chess games played in Greece per semester. - - It's been almost a year since I've first learned about Tapestry, but only since Nov 2004 have - I decided to use it in my projects. - At first, I did a thorough investingation of the framework, writing lots of test pages. - My biggest initial concern was whether it could cover all my development needs. Would there be a case - when something is not feasible in Tapestry? - I then had a student (at University of Athens) do his final project on it. It was very pleasant to see - how this (inexperienced in Java) developer came to understand and use Tapestry. It ended up becoming - the fastest final project I've ever supervised. I almost feel sorry for the other (brighter) students - who had to learn Struts (again, after my proposal). - - Finally, I just started using it in real projects and it just worked. All my fears went away! - - The only thing that I now regret is of not having known Tapestry from the very first days of its - existence. It feels as if I've wasted so much time in this pre-Tapestry era! - - Andreas Andreou - - == Graviter == - - Graviter is the assisted product search for [http://www.gravit.com.br Gravit], an online electronic shop in Brazil (think about this as a guidester knock-off). Gravit itself is hosted on a canned "e-commerce" site, but the smart, computer-inclined shop manager wanted to provide search capabilities that go far beyond what the e-commerce site currently offers. - - So I've designed a "mirror" database, that gets data exported from the e-commerce site (thanks goodness they provide an automated XML data export), and adds what we need to provide smart, consumer-oriented searchs. Every product fits in a ''category'', and each category has many ''attributes''. The shop manager can use some administrative pages to edit product descriptions and attribute values; customers then use the search pages to find the products they want. - - Graviter was done using PostgreSQL as the backend database, Hibernate 3 for object-relational mapping, Tapestry 4.0 Beta 3 for the presentation layer, and finally Spring 1.2 glueing everything together. While developing Graviter I've found and patched [http://issues.apache.org/jira/browse/TAPESTRY-450 a] [http://issues.apache.org/jira/browse/TAPESTRY-526 few] [http://issues.apache.org/jira/browse/TAPESTRY-531 bugs] in Tapestry, and contributed [http://issues.apache.org/jira/browse/TAPESTRY-435 some translations] as well. These bugs were easy to find and fix, thanks to the open source nature of Tapestry (and [http://www.jetbrains.com IDEA's] amazing code inspections). - - -- MarcusBrito - - == Brother International de Mexico == - - The site for [http://www.brother.com.mx Brother International de Mexico] was developed using MySql, OpenCMS 5, Tapestry 3 and Hibernate 2. The site includes an online store. - - [http://www.brother.com.mx Brother International de Mexico] is one of the premier providers of multifunction centers, printers and facsimile machines. Brother was established in Mexico on 1992 and markets many products manufactured by its parent company, Brother Industries, Ltd., of Nagoya, Japan. - - == Actualis.com == - - We are one of the top 10 (computers, parts for home users and professionals) resellers in France. Our new website is completely based on Tapestry 3. Behind Tapestry 3 we are using Hibernate 3, Spring and JiBX. We have more than 200000 customers and more than 10000 products online. - - Our choice of Tapestry was done after the difficulty to evolve our old php website. Many of our internal applications were done in Java, and then Tapestry had the best solution for form management, reusing components and manangement. Also the separation of code/presentation convinced the management. - - The really nice thing about tapestry is that the framework pushes you to write component based. At the beginning of the project it did not make that much sense, but after 8 months of development, we have a large library of components that are saving an incredible amount of development time. - - -- Henri Dupre - --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
