Вы находитесь на странице: 1из 14

e intentos

Intento Tiempo Pu

ÚLTIMO Intento 1 40 minutos 8.2


Calificación para este intento: 8.28 de 22
Presentado 23 de oct en 15:22
Este intento tuvo una duración de 40 minutos.

Pregunta 1
0 / 1 ptos.
Dado el siguiente bloque de codigo indique que acciones se estan realizando
(multiples respuestas)

SimpleJdbcCall jdbcCall = new SimpleJdbcCall(suscripcionDS)


.withoutProcedureColumnMetaDataAccess()
.withSchemaName(propertiesExternos.DB_SUSCRIPCION_OWNER)
.withProcedureName(invocacionPkgSP)
.declareParameters(
new SqlParameter("P_ID_SUSCRIPCION", Types.NUMERIC),
new SqlParameter("P_NOMBRE_SUSCRIPTOR", Types.VARCHAR),
new SqlParameter("P_TIPO_SUSCRIPCION", Types.VARCHAR),
new SqlParameter("P_PRECIO", Types.NUMERIC),
new SqlParameter("P_FEC_REGISTRO", Types.DATE),
// Parameros adicionales
new SqlOutParameter("P_COD_RESPUESTA", Types.NUMERIC),
new SqlOutParameter("P_MSG_RESPUESTA", Types.VARCHAR));

Respuesta correcta

indico a los parámetros de entrada los tipos asociados

Respuesta correcta

asocio el nombre de paquete.sp

Respondido

Defino 5 parametros de entrada y 2 de salida

Respuesta correcta

indico a los parámetros de salida los tipos asociados

Respuesta correcta

asocio el usuario de BD del properties al SchemaName


Pregunta 2
0 / 1 ptos.
Dadas las siguientes LDC

finally {
end = System.currentTimeMillis();
LOGGER.info(trazabilidad + "Tiempo que demoro en la ejecucion[" + (end - ini) + " ms]");
LOGGER.info(trazabilidad + "===Fin del metodo invocaSP_insertaSuscripcion - EAI ===");
}

Respuesta correcta

Pinta cuanto demoro en ejecutarse la transaccion, haciendo la diferencia de


tiempos, sin importar que fue exito o error
Respondido

solo se ejecuta en caso de exito

Solo se ejecuta en caso de error

Pregunta 3
0 / 1 ptos.
Dado el siguiente bloque de código, indique que cosa NO ocurre

public int invocaSP_insertaSuscripcion(String msgTxId, RegistrarSuscripcionRequest request) thr


ows Exception {

String trazabilidad = msgTxId + "[invocaSP_insertaSuscripcion]-";


LOGGER.info(trazabilidad + "===Inicio del metodo===");
ini = 0L;
end = 0L;
int estadoRegistro = -1;

try {
String invocacionPkgSP = propertiesExternos.PKG_GS_SP_INSERTA_SUSCRIPCION;
String idTransaccion = request.getAuditRequest().getIdTransaccion();
String usuarioAplicacion = request.getAuditRequest().getUsuarioAplicacion();
Date fechaRegistro = PropertiesInternos.getStringToDateWithFomat( request.getFecRegistro(), P
ropertiesInternos.FORMATO_FECHA );
BigDecimal bd_IdSuscripcion = new BigDecimal(request.getIdSuscripcion().trim());
suscripcionDS.setLoginTimeout(propertiesExternos.DB_TIMEOUT_EXECUTION_MAX_TIME);

Respuesta correcta

Ejecucion del paquete-sp asociado


seteo del timeout

Captura de datos de entrada del request

seteo de las variables iniciales (contadore de tiempo, estadoS, ETC)

Respondido

Formateo de algunos datos de entrada

Pregunta 4
0.33 / 1 ptos.
Segun el modelo GestionSuscripcionWS dado el siguiente bloque de codigo,
la funcion del objeto objParametrosIN es (multiples respuestas)

SqlParameterSource objParametrosIN =

new MapSqlParameterSource()
.addValue("P_ID_SUSCRIPCION", bd_IdSuscripcion)
.addValue("P_NOMBRE_SUSCRIPTOR",request.getNombreSuscriptor())
.addValue("P_TIPO_SUSCRIPCION", request.getTipoSuscripcion())
.addValue("P_PRECIO", Double.parseDouble(request.getPrecio()))
.addValue("P_FEC_REGISTRO", fechaRegistro);

¡Correcto!

Añadir al objeto todos los parametros de entrada que requiere enviar al SP

Respuesta correcta

La cantidad de valores a añadir es es funcion de la cantidad de parámetros que


tenga el SP

Respuesta correcta

Es un pareo campo del SP - valor a pasar

Añadir al objeto algunos de los parametros de entrada que requiere enviar al


SP
Pregunta 5
0 / 1 ptos.
Segun el modelo GestionSuscripcionWS en las siguientes LDC lo que hace \t
es realizar un salto de linea

LOGGER.info("P_ID_SUSCRIPCION:\t" + bd_IdSuscripcion);
LOGGER.info("P_NOMBRE_SUSCRIPTOR:\t" + request.getNombreSuscriptor());
LOGGER.info("P_TIPO_SUSCRIPCION:\t" + request.getTipoSuscripcion());
LOGGER.info("P_PRECIO:\t" + request.getPrecio());
LOGGER.info("P_FEC_REGISTRO:\t" + formatter.format(fechaRegistro));

Respondido

Verdadero

Respuesta correcta

Falso

Pregunta 6
0.2 / 1 ptos.
Si se quisiera resumir el esquema para codificar un metodo en la clase
DAOimpl seria
Respuesta correcta

mapear en el jdbcCall los tipos de los parametros (entrada/salida)

Respuesta correcta

Capturar los parametros de entrada requeridos

¡Correcto!

ejecutar el SP y capturar la salidas en un mapa

Respuesta correcta

Recuperar del mapa las salidas del SP y actualizar los estados


correspondientes

Respuesta correcta

Setear en un objParametrosIN los valores que iran a los parametros de entrada


Pregunta 7
1 / 1 ptos.
Cual de los siguientes métodos requiere hacer uso del mapper

actualizaSuscripcion

eliminaSuscripcion

¡Correcto!

listaSuscripcion

insertaSuscripcion

Pregunta 8
0.5 / 1 ptos.
Cuando se define un nuevo metodo en el DAO la forma como quiero definir los
parametros
¡Correcto!

Bastaría con pasarle el dato del ID (metodo buscar, eliminar)

Extricamente tengo que pasarle el request a todos los metodos

Respuesta correcta

Puede pasarle todo el request para internamente extraer los datos que necesito
(Ideal para el insertar actualizar)

Ninguna de las anteriores

Pregunta 9
1 / 1 ptos.
Cuando me encuentro dentro de un CATCH y quiero pintar un error a nivel de
log que uso
¡Correcto!

LOGGER.error

LOGGER.info

Cualquier da igual

LOGGER.debug

Pregunta 10
1 / 1 ptos.
Que es lo que realiza las siguientes LDC

if (p_codRespuesta.compareTo(valorCero) == 0) { //Ejecucion exitosa


estadoRegistro = 0;
}
LOGGER.info("estadoRegistro: " + estadoRegistro);

Esta considerando el caso de error

maneja la excepción de error

¡Correcto!

Si el cod devuelto por el SP es cero lo considera respuesta exitosa

Ninguna de las anteriores

Pregunta 11
1 / 1 ptos.
Cuando se esta trabajando con valores de tipo fecha (Date) el import que nos
ayudara al formateo es
¡Correcto!

import java.text.SimpleDateFormat;

import org.springframework.stereotype.Repository;

import oracle.jdbc.OracleTypes;

import java.util.Date;

Pregunta 12
0 / 1 ptos.
Cual de las siguientes excepciones son utilizadas en el DAOimpl
Respondido

Exception

DBException

NestedRuntimeException

BaseException

Respuesta correcta

Todas las anteriores

Pregunta 13
0.5 / 1 ptos.
Dado lo siguientes imports indique algunos import que son necesarios para el
DAOimpl (multiple respuesta)

import java.math.BigDecimal;
import java.sql.Types;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;

import javax.sql.DataSource;
import oracle.jdbc.OracleTypes;

import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.core.NestedRuntimeException;
import org.springframework.jdbc.core.SqlOutParameter;
import org.springframework.jdbc.core.SqlParameter;
import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
import org.springframework.jdbc.core.namedparam.SqlParameterSource;
import org.springframework.jdbc.core.simple.SimpleJdbcCall;
import org.springframework.stereotype.Repository;

Ninguna de las anteriores

Respuesta correcta

import org.springframework.jdbc.core.simple.SimpleJdbcCall;

¡Correcto!

import org.springframework.jdbc.core.SqlOutParameter;

Respuesta correcta

import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;

¡Correcto!

import org.springframework.jdbc.core.SqlParameter;

Pregunta 14
0.5 / 1 ptos.
Dado el siguiente extracto de log, se puede decir que:

[idTransaccion =103][registrarSuscripcion]-Parametros de Entrada:


<pe.com.comercio.eai.services.gestionsuscripcionws.ws.types.RegistrarSuscripcionRequest xmlns:ns
2="http://comercio.com.pe/eai/services/GestionSuscripcionWS/ws/types">
<ns2:auditRequest>
<ns2:idTransaccion>103</ns2:idTransaccion>
<ns2:ipAplicacion>127.0.0.1</ns2:ipAplicacion>
<ns2:nombreAplicacion>app</ns2:nombreAplicacion>
<ns2:usuarioAplicacion>usr</ns2:usuarioAplicacion>
</ns2:auditRequest>
<ns2:IdSuscripcion>14</ns2:IdSuscripcion>
<ns2:NombreSuscriptor>Nataly Espinoza</ns2:NombreSuscriptor>
<ns2:TipoSuscripcion>diaria</ns2:TipoSuscripcion>
<ns2:Precio>90</ns2:Precio>
<ns2:FecRegistro>01/07/2017</ns2:FecRegistro>
<ns2:listaRequestOpcional>
<ns2:objetoRequestOpcional campo="?" valor="?"/>
</ns2:listaRequestOpcional>
</pe.com.comercio.eai.services.gestionsuscripcionws.ws.types.RegistrarSuscripcionRequest>
2017-07-04 21:53:22,823 [INFO ] services.GestionSuscripcionServiceImpl (GestionSuscripcionServic
eImpl.java:69)- Se obtuvieron todos los datos con EXITO
2017-07-04 21:53:22,823 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:49)- [idTransacc
ion =103][registrarSuscripcion]-[invocaSP_insertaSuscripcion]-===Inicio del metodo===
2017-07-04 21:53:22,825 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:76)- [idTransacc
ion =103][registrarSuscripcion]-[invocaSP_insertaSuscripcion]-Consultando BD SUSCRIPCIONES EAI c
on JNDI =minedu.oracle.suscripcion
2017-07-04 21:53:22,826 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:77)- [idTransacc
ion =103][registrarSuscripcion]-[invocaSP_insertaSuscripcion]-Tiempo permitido de ejecucion=300
2017-07-04 21:53:22,827 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:79)- [idTransacc
ion =103][registrarSuscripcion]-[invocaSP_insertaSuscripcion]-Ejecutando SP : uIdatGESTION_SUSCR
IPCION3.SP_INSERTA_SUSCRIPCIONES
2017-07-04 21:53:22,827 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:83)- P_ID_SUSCRI
PCION: 14
2017-07-04 21:53:22,829 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:84)- P_NOMBRE_SU
SCRIPTOR: Nataly Espinoza
2017-07-04 21:53:22,829 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:85)- P_TIPO_SUSC
RIPCION: diaria
2017-07-04 21:53:22,830 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:86)- P_PRECIO: 9
0
2017-07-04 21:53:22,830 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:87)- P_FEC_REGIS
TRO: 01/07/2017
2017-07-04 21:53:22,837 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:104)- Entro al c
odigo de respuest: 0
2017-07-04 21:53:22,837 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:105)- Entro al m
ensaje de respuest: SE REGISTRO LA SUSCRIPCION CORRECTAMENTE
2017-07-04 21:53:22,838 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:110)- estadoRegi
stro: 0
2017-07-04 21:53:22,838 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:124)- [idTransac
cion =103][registrarSuscripcion]-[invocaSP_insertaSuscripcion]-Tiempo que demoro en la ejecucion
[1499223202838 ms]
2017-07-04 21:53:22,838 [INFO ] dao.SuscripcionDAOImpl (SuscripcionDAOImpl.java:125)- [idTransac
cion =103][registrarSuscripcion]-[invocaSP_insertaSuscripcion]-===Fin del metodo invocaSP_insert
aSuscripcion - EAI ===
2017-07-04 21:53:22,840 [INFO ] services.GestionSuscripcionServiceImpl (GestionSuscripcionServic
eImpl.java:127)- [idTransaccion =103][registrarSuscripcion]-Parametros de Salida:
<pe.com.comercio.eai.services.gestionsuscripcionws.ws.types.RegistrarSuscripcionResponse xmlns:n
s2="http://comercio.com.pe/eai/services/GestionSuscripcionWS/ws/types">
<ns2:auditResponse>
<ns2:idTransaccion>103</ns2:idTransaccion>
<ns2:codigoRespuesta>0</ns2:codigoRespuesta>
<ns2:mensajeRespuesta>Exito en el registro de la suscripcion</ns2:mensajeRespuesta>
</ns2:auditResponse>
</pe.com.comercio.eai.services.gestionsuscripcionws.ws.types.RegistrarSuscripcionResponse>
2017-07-04 21:53:22,840 [INFO ] services.GestionSuscripcionServiceImpl (GestionSuscripcionServic
eImpl.java:130)- [idTransaccion =103][registrarSuscripcion]-Tiempo que demoro en la ejecucion[28
ms]
2017-07-04 21:53:22,840 [INFO ] services.GestionSuscripcionServiceImpl (GestionSuscripcionServic
eImpl.java:131)- [idTransaccion =103][registrarSuscripcion]-=== Fin metodo consultarOpcionesConf
igurables ===
2017-07-04 21:55:59,551 [INFO ] services.GestionSuscripcionServiceImpl (GestionSuscripcionServic
eImpl.java:42)-

¡Correcto!

El registro de la suscripción fue realizada con exito


Esto se verifica en la linea

<ns2:mensajeRespuesta>Exito en el registro de la suscripcion</ns2:mensajeResp


uesta>

El registro de la suscripción fue realizada con error

Respuesta correcta

Toda la transaccion demoro 28 ms (milisegundos)

No se puede determinar el estado de registro con el log mostrado

Pregunta 15
0.5 / 1 ptos.
Cual de las siguientes variables globales requiere de inyección de
dependencias en la clase GestionSuscripcionServiceImpl.java
Respondido

formatter

¡Correcto!

propertiesExternos

ini

end

¡Correcto!

suscripcionDS

Pregunta 16
0 / 1 ptos.
Cuando los datos obligatorios han venido vacíos es necesario invocar al dao
Respondido

Verdadero

Respuesta correcta

Falso

Pregunta 17
0 / 1 ptos.
En el proyecto modelo GestionSuscripcionWS según el código fuente del
método listarSuscripcion del service que se ha visto en clase, para recorrer
la lista que devuelve el dao se ha usado:
Respondido

for (int i = 0; i < i<=n; i++)

Respuesta correcta

foreach

Ninguna de las anteriores

Pregunta 18
0.75 / 1 ptos.
En el proyecto modelo GestionSuscripcionWS según el bloque de
excepciones que se manejan en el service, se han usado (Mas de una
respuesta es correcta)
¡Correcto!

DBException

¡Correcto!

Exception

RuntimeException
¡Correcto!

SQLTimeoutException

Respuesta correcta

CannotGetJdbcConnectionException

Pregunta 19
0 / 1 ptos.
En el proyecto modelo GestionSuscripcionWS cuales de las siguientes son
tareas de la clase GestionSuscripcionServiceImpl.java
Respuesta correcta

mostrar el resultado de ejecucion del dao

Respuesta correcta

realizar validaciones de datos de entrada que recibe del request

Respuesta correcta

invocar a la clase DAO que ejecutara el procedimiento almacenado

Respondido

generar los types del contrato

exponer los bindings del servicio

Pregunta 20
0 / 1 ptos.
En el proyecto modelo GestionSuscripcionWS cuando quiero pintar en el log
el response que contiene el resultado de la ejecucion, que metodo de la
clase JAXBUtilitarios debo usar
Respuesta correcta

anyObjectToXmlText
Respondido

obtainJaxBContextFromClass

Ninguna de la anteriores

getXmlTextFromJaxB

Pregunta 21
1 / 1 ptos.
En el proyecto modelo GestionSuscripcionWS el
método listarSuscripcion del service con apoyo de la clase dao realiza la
ejecución de la lista en la BD,

ConsultaSuscripcionBean consultaSuscripcion = suscripcionDS.invocaSP_listaSus


cripcion(msgTxId,
idSuscripcion, nombreSuscriptor, fechaIni, fechaFin);

la lista obtenida en caso de exito es:


¡Correcto!

List<SuscripcionBean> listaSuscripciones

Es correcto ya que la clase ConsultaSuscripcionBean contiene lo siguiente

private List<SuscripcionBean> listaSuscripciones;


private String codRpta;
private String MsjRpta;

ListaSuscripcionesType listSuscripcionType

Ninguna de las anteriores

Pregunta 22
0 / 1 ptos.
En el proyecto modelo GestionSuscripcionW cual de las
siguientes anotaciones es la que hace que la
clase GestionSuscripcionServiceImpl.java se defina como clase
implementadora de servicio de negocio.

@WebService

Respondido

@Autowired

Respuesta correcta

@Service

@Override

Calificación de la evalua

Вам также может понравиться