TheDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/17Franco/CulturarteWeb/llms.txt
Use this file to discover all available pages before exploring further.
/AltaPropuesta servlet handles the full lifecycle of creating a new cultural proposal in CulturarteWeb. A GET request loads the form pre-populated with categories fetched from the SOAP back-end; a POST request validates and persists the new proposal, initially placing it in the INGRESADA state. Only authenticated users of type Proponente may create proposals.
GET /AltaPropuesta
Renders the proposal creation form.- Connects to the SOAP
ControllerWSservice and callsportU.getCategorias()to retrieve the full category tree (categories and their subcategories). - Stores the result as the
categoriasrequest attribute soAltaPropuesta.jspcan build the category radio-button list. - Reads and clears the
exitosession attribute — if a proposal was just created successfully, the success banner is surfaced once and then removed from the session. - Forwards to
/AltaPropuesta.jsp.
The GET handler does not enforce an active session. The form is visible to any visitor, but the POST will reject unauthenticated requests. If categories cannot be loaded (SOAP error), an
error request attribute is set and the form is shown without a category list.Example
POST /AltaPropuesta
Validates the submitted form data and creates the proposal via SOAP.Authorization
| Check | Failure behaviour |
|---|---|
Session attribute logueado must be present | Redirects to login.jsp |
portU.isProponente(nick) must return true | Forwards to index.jsp with an error attribute |
Request parameters
Title of the cultural proposal. Used as the unique identifier throughout the system.
Full description of the cultural event or initiative.
Image file for the proposal (multipart file part,
name="imagen"). Must be provided and non-empty; if missing or zero-size the server returns to the form with the error message "Debe subir una imagen.".Physical location or venue where the event will take place.
Planned event date. Must be formatted as
yyyy-MM-dd (e.g. 2025-12-31). An empty or missing value returns the form with "Debe seleccionar una fecha.".Ticket/entry price in local currency units. Must be a valid integer ≥ 0; non-numeric values return the form with
"Precio o monto total inválido.".Total funding goal in local currency units. Must be a valid integer ≥ 1; non-numeric values return the form with
"Precio o monto total inválido.".Name of an existing category or subcategory, as returned by
portU.getCategorias(). An empty or missing value returns the form with "Debe seleccionar una Categoria.".One or more return types offered to collaborators. Accepted values:
If no value is selected the form is returned with
| Form value | SOAP enum |
|---|---|
EntradaGratis | TipoRetorno.ENTRADA_GRATIS |
PorcentajeGanancia | TipoRetorno.PORCENTAJE_GANANCIA |
"Debe seleccionar un Retorno.".SOAP call
On successful validation, the servlet calls:Success flow
- SOAP call completes without exception.
- Session attribute
exitois set to"Propuesta creada correctamente.". - Browser is redirected to
GET /AltaPropuesta, where the success banner is displayed once and then cleared.
Validation error flow
Any validation failure forwards back to/AltaPropuesta.jsp with:
errorrequest attribute — human-readable error message.categoriasrequest attribute — re-fetched category list so the form can be re-rendered.
Initial proposal state
All proposals created through this endpoint start in theINGRESADA state. Proposals in this state are excluded from the public search results (see /Buscador) until they are reviewed and transition to PUBLICADA.