--- title: "Spring MVC" url: https://docs.catalyst.zoho.com/es/serverless/help/appsail/help-guides/java/spring-mvc/ description: "Catalyst AppSail es un componente PaaS completamente gestionado de Catalyst Serverless que te permite desarrollar y desplegar servicios en Java, Node.js y Python en la nube con facilidad, y gestionar tus instancias de plataforma." last_updated: 2026-03-20T16:21:56Z service: Serverless type: general --- # Spring- MVC El framework [Spring Web MVC](https://docs.spring.io/spring-framework/docs/3.2.x/spring-framework-reference/html/mvc.html) es un módulo del popular [framework Spring](https://spring.io) que sigue una arquitectura Modelo-Vista-Controlador. Este framework permite la creación de aplicaciones web, incorporando las ventajas del framework Spring junto con el acoplamiento débil de componentes en el patrón de diseño MVC. Está construido alrededor de un `DispatcherServlet` que maneja solicitudes y respuestas HTTP, y despacha las solicitudes a los handlers y controladores necesarios. Este ejemplo explica los pasos para construir una aplicación de muestra en el framework Spring MVC, exportarla como un archivo WAR y desplegarla en AppSail. 1. Crea un nuevo proyecto Maven usando un IDE de tu elección. Debes seleccionar el siguiente [Archetype](https://maven.apache.org/guides/introduction/introduction-to-archetypes.html) para el proyecto: `org.apache.maven.archetypes maven-archetype-webapp`. 2. En el archivo `pom.xml` de tu proyecto, agrega las dependencias de Spring que se proporcionan a continuación. ```java <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>5.2.19.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.19.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>5.2.19.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.19.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>5.2.19.RELEASE</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> ``` 3. Agrega las dependencias a continuación en un encapsulado de compilación para compilar y generar el archivo WAR. ```java <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.0</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> <plugin> <artifactId>maven-war-plugin</artifactId> <version>3.2.1</version> <configuration> <warSourceDirectory>WebContent</warSourceDirectory> </configuration> </plugin> </plugins> ``` 4. Crea un [archivo de configuración XML de Spring](https://docs.spring.io/spring-framework/docs/4.2.x/spring-framework-reference/html/xsd-configuration.html) en tu proyecto, y agrega las configuraciones de beans que se proporcionan a continuación. ```java <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd "> ``` Tu archivo de configuración de Spring debería verse algo así: ```java <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd "> <mvc:annotation-driven/> <mvc:default-servlet-handler/> <context:component-scan base-package="com.amelia.example.controller" /> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/"></property> <property name="suffix" value=".jsp"></property> </bean> </beans> ``` 5. Agrega un runtime de servidor al proyecto. Por ejemplo, si estás trabajando en el IDE Eclipse, puedes agregar un runtime objetivo para el servidor Apache Tomcat de la siguiente manera: Haz clic derecho en el **project -> Properties -> Targeted Runtime**. Aquí, puedes agregar el runtime requerido, luego haz clic en **Apply**. 6. Ahora puedes agregar el controlador requerido y el manejo de páginas de error, así como un mapeo de servlet en el archivo `web.xml` de tu proyecto. Por ejemplo, puedes usar la configuración que se proporciona a continuación: ```java <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>helloworld</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>helloworld</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <error-page> <error-code>404</error-code> <location>/error.jsp</location> </error-page> <error-page> <error-code>401</error-code> <location>/error.jsp</location> </error-page> <error-page> <error-code>500</error-code> <location>/error.jsp</location> </error-page> <error-page> <error-code>400</error-code> <location>/error.jsp</location> </error-page> <error-page> <error-code>403</error-code> <location>/error.jsp</location> </error-page> <error-page> <error-code>408</error-code> <location>/error.jsp</location> </error-page> <error-page> <error-code>413</error-code> <location>/error.jsp</location> </error-page> <error-page> <error-code>414</error-code> <location>/error.jsp</location> </error-page> <error-page> <error-code>505</error-code> <location>/error.jsp</location> </error-page> <error-page> <error-code>405</error-code> <location>/error.jsp</location> </error-page> <error-page> <error-code>409</error-code> <location>/error.jsp</location> </error-page> <error-page> <exception-type> java.lang.Throwable </exception-type> <location>/error.jsp</location> </error-page> ``` 7. Puedes subir la aplicación a Catalyst exportándola como un archivo WAR. En el ejemplo de Eclipse, puedes hacer clic derecho en el proyecto y elegir **Export As -> WAR**. Debes hacer lo siguiente: a. Elige un destino con el nombre de archivo como `ROOT.war` b. Desmarca la opción Optimize for specific server runtime. 8. Ahora puedes [inicializar un servicio de AppSail](https://docs.catalyst.zoho.com/es/cli/v1/initialize-resources/initialize-appsail/) en el mismo directorio desde el CLI o [agregarlo](https://docs.catalyst.zoho.com/es/cli/v1/add-appsail/) en un directorio de proyecto existente. La fuente de la aplicación debe ser el directorio de tu aplicación. Proporciona los siguientes valores al inicializar el servicio de aplicación: **Stack:** Java 8 **Platform:** Java WAR 9. Asegúrate de que los archivos compilados se agreguen en el directorio de compilación que especifiques durante la inicialización. Catalyst comprimirá automáticamente los archivos de tu aplicación durante el despliegue a la consola remota. 10. [Despliega el servicio de aplicación](https://docs.catalyst.zoho.com/es/cli/v1/deploy-resources/deploy-appsail//) en la consola. Accede al servicio de aplicación desplegado desde su [URL de endpoint](https://docs.catalyst.zoho.com/es/serverless/help/appsail/key-concepts/appsail-execution/#custom-domain-url).