THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
Include Page | ||||
---|---|---|---|---|
|
Include Page | ||||
---|---|---|---|---|
|
Div | ||
---|---|---|
| ||
We think you will love Tapestry! Give us 20 minutes and follow our quickstart guide. |
Div | ||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||
Wiki Markup | ||||||||||||||||||||||||||||||||||||||||||
{html}
<style type="text/css">
#twtr-widget-1 .twtr-doc, #twtr-widget-1 .twtr-hd a, #twtr-widget-1 h3, #twtr-widget-1 h4, #twtr-widget-1 .twtr-popular {
background-color: #539126 !important;
color: #FFFFFF !important;
}
#twtr-widget-1 .twtr-tweet a {
color: #539126 !important;
}
.big-col {
margin-right: 310px !important;
}
#col {
width : 250px;
}
.features{
height : 200px;
}
</style>
{html}
{div:id=col}
h2. [!twitter_icon.png!|http://twitter.com/apachetapestry]
{widget:url=http://search.twitter.com/search?q=tapestry5}
h2. [News] [!Feed-icon.gif!|https://cwiki.apache.org/confluence/createrssfeed.action?types=blogpost&spaces=TAPESTRY&title=Apache+Tapestry+News+RSS+Feed&labelString%3D&sort=created&maxResults=10&timeSpan=12&confirm=Create&showContent=true&showDiff=false]
{blog-posts:max=10|sort=creation|reverse=true|content=excerpts}
{div}
{div:id=content|class=big-col}
h2. What is Apache Tapestry?
{html}<div>{html}
{html}<div>{html}
{html}<div style="float:left;width:49%">{html}
h3. !Chat.png! Pure Java and polyglot
Written in Java, suitable for Java applications, you can use Groovy or Scala instead too\!
{html}</div>{html}
{html}<div style="float:right; width:49%">{html}
h3. !injection.png! Convention over configuration
Say goodbye to endless XML configuration files and welcome dependency injection and meta-programming through annotations
{html}</div></div>{html}
{html}<div>{html}
{html}<div style="float:left;width:49%">{html}
h3. !Refresh.png! Highly productive
Live class reloading means that the time between seeing an error and providing the fix is seconds, not minutes.
{html}</div>{html}
{html}<div style="float:right;width:49%">{html}
h3. !bug.png! Advanced Exception reporting
It gives you all the tools you need to fix your problem: not just a stack trace, but every bit of information you need to know about what was doing, why it was doing it, what went wrong, and how to fix it.
{html}</div></div>{html}
{html}<div>{html}
{html}<div style="float:left;width:49%">{html}
h3. Fast
Without Java reflection use is built to cleanly support large numbers of concurrent threads. Includes GZip content compression, JavaScript aggregation, and far future expires headers.
{html}</div>{html}
{html}<div style="float:right;width:49%">{html}
h3. Testable
Built for testability provides nice testing functionalities enchanting TDD techniques. [See Tapestry covertura report|http://tapestry.apache.org/tapestry5.1/tapestry-core/cobertura/index.html]
{html}</div></div>{html}
{html}<div>{html}
{html}<div style="float:left;width:49%">{html}
h3. Scalable
Scales up big on a single server, and offers great options into a cluster. Ready for REST, it is suitable for the most staless or stateful applications
{html}</div>{html}
{html}<div style="float:right;width:49%">{html}
h3.!plugin.png! Adaptable
Architecture is open and extensible. There's a clean way to add your own logic, or substitute some logic with your own. Provides integration with [Hibernate|http://hibernate.org/] and [Spring|http://www.springsource.org/]. Third-party integrations with other tools, such as [Quartz|http://www.quartz-scheduler.org/].
{html}</div></div>{html}
{html}</div>{html}
More on [Tapestry philosophy|TAPESTRY:Principles]
{div} |