Tapiz de Apache: páginas y componentes

Tapestry Application es simplemente una colección de Tapestry Pages. Trabajan juntos para formar una aplicación web bien definida. Cada página tendrá una plantilla XML correspondiente y cero, uno o más componentes. La página y el componente son iguales, excepto que la página es un componente raíz y, por lo general, la crea un desarrollador de aplicaciones.

Components are children of the root Pagecomponent. Tapestry tiene muchos componentes integrados y tiene la opción de crear un componente personalizado.

Páginas

Como se mencionó anteriormente, las páginas son componentes básicos de una aplicación de tapiz. Las páginas son POJO simples, colocadas debajo de:/src/main/java/«package_path»/pages/carpeta. Cada página tendrá su correspondienteXML Template y su ubicación predeterminada es - /src/main/resources/«package_name»/pages/.

Puede ver aquí que la estructura de la ruta es similar para Página y Plantilla, excepto que la plantilla está en el Resource Folder.

Por ejemplo, una página de registro de usuario en una aplicación Tapestry con el nombre del paquete: com.example.MyFirstApplication tendrá los siguientes archivos de página y plantilla:

  • Java Class -

    /src/main/java/com/example/MyFirstApplication/pages/index.java

  • XML Template -

    /src/main/resources/com/example/MyFirstApplication/pages/index.tml

Creemos un simple Hello Worldpágina. Primero, necesitamos crear unJava Class en - /src/main/java/com/example/MyFirstApplication/pages/HelloWorld.java ”.

package com.example.MyFirstApplication.pages; 
public class HelloWorld { 
}

Luego, cree una plantilla XML en -

“/Src/main/resources/com/example/MyFirstApplication/pages/helloworld.html”.

<html xmlns:t = "http://tapestry.apache.org/schema/tapestry_5_4.xsd"> 
   <head> 
      <title>Hello World Page</title> 
   </head> 
   <body> 
      <h1>Hello World</h1> 
   </body> 
</html>

Ahora, se puede acceder a esta página en https://localhost:8080/myapp/helloworld. Esta es una página de tapiz simple. Tapestry ofrece muchas más funciones para desarrollar páginas web dinámicas, que analizaremos en los siguientes capítulos.