Documents

FAM 4.0 - Creació d'un manteniment simple

Prerequisits

  • Instal·lada la darrera versió de l'entorn de desenvolupament de la Diputació.
  • Un projecte basat en l'arquetip del FAM Backoffice

Creació del manteniment

En aquest article s'explica com generar un CRUD (Create Update Read Delete) agafant com a base una entitat de les més simples del projecte FAM Backoffice: FamZona.

Nota: Als noms de les entitats es respecta el prefix FAM de les taules, però a la resta de classes no per facilitar la lectura i la cerca.

FAM 4.0 - Validació

Validació de formularis

Recordatori del cicle de vida o fases d'una pàgina JSF:

  1. Restore View
  2. Apply Request Values
  3. Process Validations. Si detecta errors es passa directament a la fase 6
  4. Update Model Values
  5. Invoke Application
  6. Render response

Les tasques de validació (fase 3) es fan abans que l'execució del codi de negoci (fases 4 i 5). En aquelles situacions que no es supera la validació s'obté un millora del rendiment. La validació de formularis es farà aprofitant l'estàndar JSR-303.

FAM 4.0 - Navegacio

Què és PrettyFaces?

PrettyFaces és una llibreria open-source per re-escriure les URL (URL-Rewriting) i fer-les més amigables amb suport millorat per JSF 1.1, 1.2 i 2.0. PrettyFaces resol el problema "URL REST" de forma elegant, i a més incorpora característiques com: accions de càrrega de pàgina, integració perfecte amb la navegació JSF i compatibilitat sense configuració amb d'altres frameworks web.

FAM 4.0 - Scaffolding

Scaffolding

Scaffold és bastida en anglés. La tècnica de scaffolding consisteix en generar codi que permet la funcionalitat bàsica d’un model o entitat, normalment un CRUD (Create, Read, Update, Delete). D’aquesta forma s’estalvia temps alhora de generar el codi base, la bastida, d’una entitat, que en el cas de les aplicacions JEE de la Diputació són:

FAM 4.0 - Estructura del projecte i classes

Estructura del projecte

L'esquema general d'un projecte és:

FAM - Dues aplicacions simultànies

Quin és el problema?

El problema és que no es pot obrir més d'una aplicació del tipus FAM en un mateix navegador (una aplicació per tab o pestanya). En el moment en que s'obre una segona aplicació en un altre pestanya, es tanca la sessió automàticament de les dos aplicacions.

Projecte Symfony correctament desplegat

Per configurar correctament un projecte Symfony a la Diputació de Barcelona cal seguir el estàndard de Symfony i tenir en compte que tindrem dos entorns amb configuracions diferents però un codi únic.

Versió

Treballarem amb versions LTS (Long Term Suport), actualment Symfony 2.8 LTS amb suport fins al Novembre del 2018.

La propera versió LTS serà Symfony 3.4 planificada per a mitjans del 2017.

Criteris i entregables per desenvolupaments Liferay

Requisits generals de desenvolupament sobre Liferay.

Àmbit d'aplicació

Aquest apartat recull les especificacions de referència en la realització de projectes Liferay desenvolupats per la Diputació de Barcelona.

En termes generals, qualsevol arquitectura, solució, component estàndard o versió l'acceptació de la qual no estigui expressament citat, s'entén no pot ser incorporat implícitament, ja que la seva adopció, depèn, en tot cas, de la validació i acceptació expressa de la DSTSC.

Com llegir un fitxer BLOB via PDO

Seguint la documentació de Com connectar-se a l'Oracle corporatiu via PDO

si volguessim llegir un fitxer de l'Oracle que fos una imatge o document executariem la següent sentència:

$stmt = conn->prepare('SELECT campBLOB FROM taula1');
$stmt->execute();
$res = $stmt->fetch(\PDO::PARAM_LOB);

Definint el head del document segons el tipus de document, per exemple,

Com connectar-se a l'Oracle corporatiu via OCI (No recomanat)

En casos molt determinats la capa PDO no ens permetrà fer determinades accions, és en aquest casos, on ens pot interessar anar directament contra del driver OCI.

El codi de connexió serà el següent: