<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <meta charset="utf-8">
	
	

        <title>Introducing Apache Wicket | Apache Wicket</title>
        <meta name="viewport" content="width=device-width, initial-scale=1" />

        <link rel="shortcut icon" href="/favicon.ico" type="image/vnd.microsoft.icon" />
        <link rel="stylesheet" href="/css/style.css" type="text/css" media="screen" />
        <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />

		<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>


    </head>
    <body class="">
        <div class="header default">
    <div class="l-container">
        
<nav class="mainmenu">
    <div class="nav-logo">
    <a href="/"><img src="/img/logo-apachewicket.svg" alt="Apache Wicket"></a>
</div>

    <div class="nav-container">
    
		
    	
        
        
		<!-- /start/quickstart.html || /start/overview -->
		
    	
        
    	<a href="/start/quickstart.html" class=" nav-items">Quick Start</a>
    
		
    	
        
        
		<!-- /start/download.html || /start/overview -->
		
    	
        
    	<a href="/start/download.html" class=" nav-items">Download</a>
    
		
    	
        
        
		<!-- /learn || /start/overview -->
		
    	
        
    	<a href="/learn" class=" nav-items">Documentation</a>
    
		
    	
        
        
		<!-- /help || /start/overview -->
		
    	
        
    	<a href="/help" class=" nav-items">Support</a>
    
		
    	
        
        
		<!-- /contribute || /start/overview -->
		
    	
        
    	<a href="/contribute" class=" nav-items">Contribute</a>
    
		
    	
        
        
		<!-- /community || /start/overview -->
		
    	
        
    	<a href="/community" class=" nav-items">Community</a>
    
		
    	
        
        
		<!-- /apache || /start/overview -->
		
    	
        
    	<a href="/apache" class=" nav-items">Apache</a>
    
    </div>
    <div class="nav-container  ">
        <a href="https://github.com/apache/wicket" target="_blank"><i class="fa fa-github nav-items"></i></a>
        <a href="https://twitter.com/apache_wicket" target="_blank"><i class="fa fa-twitter nav-items"></i></a>
        <a href="https://builtwithwicket.tumblr.com" target="_blank"><i class="fa fa-tumblr nav-items"></i></a>
    </div>    
</nav>
        
    </div>
</div>
<main>
    <div class="l-container">
        <header class="l-full preamble">
            <h1>Introducing Apache Wicket</h1>
            <h2>Find what Wicket offers you!</h2>
            
            
        </header>
        <section class="toc left default ">
            
        </section>
        <section>
            <div class="l-clearfix">
	<article class="l-one-third">
		<header>
			<img src="/img/java-wicket-html5.png" />
			<h3>Just Java &amp; HTML</h3>
		</header>
		<p>Leverage what you know about Java or your favorite HTML editor
			to write Wicket applications. With pure Java code and HTML markup
			Wicket is the go-to web framework for purists.</p>
	</article>
	<article class="l-one-third">
		<header>
			<img src="/img/wicket-safe.png" />
			<h3>Secure by default</h3>
		</header>
		<p>URLs do not expose sensitive information and all component
			paths are session-relative. Wicket keeps your model private except
			those parts you explicitly expose.</p>
	</article>
	<article class="l-one-third">
		<header>
			<img src="/img/wicket-components.png" />
			<h3>Maintainable code</h3>
		</header>
		<p>Pages and Components in Wicket are real Java objects that
			support encapsulation, inheritance and events. Create high level
			components with ease and bundle its stylesheets, JavaScript and
			other resources into one reusable package.</p>
	</article>
</div>
<div class="l-clearfix">
	<article class="l-one-third">
		<h3>Internationalization</h3>
		<p>With support of over 25 languages out-of-the-box, Wicket let's
			you get started in your own language, or a second language with no
			effort. You can provide alternative languages on the application,
			page, or even component level.</p>
	</article>
	<article class="l-one-third">
		<h3>Ajax components</h3>
		<p>Write Ajax applications without having to write a single line
			of JavaScript code. Wicket's Ajax functionality makes it trivial to
			update selected parts of a UI, and comes with a great selection of
			basic Ajax components.</p>
	</article>
	<article class="l-one-third">
		<h3>Injection support for CDI, Spring and Guice</h3>
		<p>Inject your services into your pages and components with the
			technology of your choosing: Wicket provides integration with CDI
			(JSR-305), Spring and Guice.</p>
	</article>
</div>
<div class="l-clearfix">
	<article class="l-one-third">
		<h3>JavaEE support</h3>
		<p>If you are using the Web profile of JavaEE 6, you can leverage
			Bean Validation and CDI with Wicket's integrations for these
			specifications.</p>
	</article>
	<article class="l-one-third">
		<h3>Multi-tab and window support</h3>
		<p>No more pain while keeping taps on multiple tabs and windows.
			Wicket's automatic state storage ensures that your users can open
			pages in new tabs and windows without causing problems.</p>
	</article>
	<article class="l-one-third">
		<h3>Test your pages and components</h3>
		<p>With WicketTester you can achieve testing coverage your QA
			department can only dream of. Test your pages without having to run
			inside a browser, or start a container. Test your components
			directly, check their rendered markup tags, attributes and contents
			with ease.</p>
	</article>
</div>
<div class="l-clearfix">
	<article class="l-one-third">
		<h3>Pluggable Ajax support</h3>
		<p>While Wicket ships with JQuery as the backing library for
			Ajax, you can replace the innards of Wicket Ajax with any other
			library of your choosing.</p>
	</article>
</div>


        </section>
    </div>
</main>

        <footer>
            <div class="l-container">
    <div class="left">
        <img src="/img/asf_logo_url.svg" style="height:90px; float:left; margin-right:10px;">
        <div style="margin-top:12px;">Copyright © 2022 — The Apache Software Foundation. Apache Wicket, Wicket, Apache, the Apache feather logo, and the Apache Wicket project logo are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</div>
    </div>
</div>

        </footer>
    </body>
</html>
