Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update admin-app to Angular 12 #173

Closed
albertcoro opened this issue Jul 8, 2024 · 4 comments
Closed

Update admin-app to Angular 12 #173

albertcoro opened this issue Jul 8, 2024 · 4 comments
Assignees
Labels
enhancement New feature or request

Comments

@albertcoro
Copy link
Contributor

No description provided.

@albertcoro albertcoro added the enhancement New feature or request label Jul 8, 2024
@albertcoro albertcoro self-assigned this Jul 8, 2024
@albertcoro
Copy link
Contributor Author

@fjlopez existe un error de una request, reproducible en las siguientes branchs:

  • Sitmun-application-stack: feature-4
  • Sitmun-admin-app: Updates
  • Sitmun-backend-core: app-stack-feature-4
  • Otros: main

Acciones para reproducir el error:

@albertcoro
Copy link
Contributor Author

albertcoro commented Jul 10, 2024

Voy a abrir una nueva issue para este error de request

@fjlopez
Copy link
Contributor

fjlopez commented Jul 10, 2024

Comportamiento de las Relaciones 0..1 en Spring Data Rest

No es un error, es una característica de Spring Data Rest. La relación entre Tarea y Cartografía es 0..1 y se identifica con api/tasks/{id-tarea}/cartography/. Si no hay una cartografía asociada a la tarea, se devuelve una respuesta 404, y si hay cartografía, se devuelve una respuesta 200 con el JSON que describe la tarea.

Acciones para Validar el Comportamiento

  1. En el Menu Lateral -> Tasques -> Bàsiques -> 33:

    • Vemos que el campo Cartografia no tiene valor. Esto se debe a que http://localhost:9000/backend/api/tasks/33/cartography?projection=view devuelve 404 Not Found.
  2. Pulsamos sobre el botón + junto a Cartografía y se abre un modal para la selección de la cartografía.

  3. En el modal, seleccionamos cartografía con ID 4393.

  4. Pulsamos Afegeix y cerramos el modal.

  5. Pulsamos Desa:

    • Vemos que entre las operaciones que se realizan hay un PUT a http://localhost:9000/backend/api/tasks/33/cartography/ cuyo body es http://localhost:9000/backend/api/cartographies/4393.
  6. Pulsamos Tornar.

  7. Volvemos a seleccionar la tarea 33:

    • Vemos que el campo Cartografia tiene valor. Esto se debe a que http://localhost:9000/backend/api/tasks/33/cartography?projection=view devuelve con una respuesta 200 Ok el JSON que describe la cartografía con identificador 4393.

Justificación del Comportamiento

Este comportamiento no está bien documentado en Spring Data Rest porque los creadores de Spring Data Rest piensan que es un comportamiento obvio 🤦

Wouldn't documenting that both cases return a 404 Not Found be documenting the obvious? If a resource does not exist, 404 is the natural status code by definition, isn't it?

No todos los 404 que te encuentres están relacionados con este comportamiento. Solo los que están directamente relacionados con Spring Data REST. ¿Cómo saberlo? En este caso, http://localhost:9000/backend/api/tasks/33/cartography/ aparece declarado en el elemento _link del esquema HAL de http://localhost:9000/backend/api/tasks/33. En otros similares, en caso de duda, habría que hacer la misma búsqueda.

@fjlopez
Copy link
Contributor

fjlopez commented Jul 10, 2024

Voy a abrir una nueva issue para este error de request

#181 es inválida ya que es un comportamiento de la API.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants