elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


  Mostrar Mensajes
Páginas: [1]
1  Programación / Java / Re: Me fallan 6 test y no sé por qué en: 23 Junio 2025, 20:52 pm
No son test unitarios, es un validador .jar
lsduser@SOS-Restful:~$ cd Escritorio/
lsduser@SOS-Restful:~/Escritorio$ cd /home/lsduser/Escritorio/practica_shit/servicio && ant jar.server && cp build/lib/ETSIINFLibrary.aar /home/lsduser/software/apache-tomcat-9.0.87/webapps/axis2/WEB-INF/services/ && cd /home/lsduser/software/apache-tomcat-9.0.87/bin && ./shutdown.sh && sleep 5 && ./startup.sh
Buildfile: /home/lsduser/Escritorio/practica_shit/servicio/build.xml

init:

pre.compile.test:
     [echo] Stax Availability= true
     [echo] Axis2 Availability= true

compile.src:
    [javac] /home/lsduser/Escritorio/practica_shit/servicio/build.xml:43: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 1 source file to /home/lsduser/Escritorio/practica_shit/servicio/build/classes

echo.classpath.problem:

jar.server:
      [jar] Building jar: /home/lsduser/Escritorio/practica_shit/servicio/build/lib/ETSIINFLibrary.aar

BUILD SUCCESSFUL
Total time: 0 seconds
Using CATALINA_BASE:   /home/lsduser/software/apache-tomcat-9.0.87
Using CATALINA_HOME:   /home/lsduser/software/apache-tomcat-9.0.87
Using CATALINA_TMPDIR: /home/lsduser/software/apache-tomcat-9.0.87/temp
Using JRE_HOME:        /usr/lib/jvm/java-1.8.0-openjdk-amd64
Using CLASSPATH:       /home/lsduser/software/apache-tomcat-9.0.87/bin/bootstrap.jar:/home/lsduser/software/apache-tomcat-9.0.87/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Using CATALINA_BASE:   /home/lsduser/software/apache-tomcat-9.0.87
Using CATALINA_HOME:   /home/lsduser/software/apache-tomcat-9.0.87
Using CATALINA_TMPDIR: /home/lsduser/software/apache-tomcat-9.0.87/temp
Using JRE_HOME:        /usr/lib/jvm/java-1.8.0-openjdk-amd64
Using CLASSPATH:       /home/lsduser/software/apache-tomcat-9.0.87/bin/bootstrap.jar:/home/lsduser/software/apache-tomcat-9.0.87/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.
lsduser@SOS-Restful:~/software/apache-tomcat-9.0.87/bin$ cd /home/lsduser/Escritorio/practica_shit && java -jar ValidadorLibrary.jar
[VALIDADOR] Se realiza un borrado de usuarios en el authentication para asegurar el correcto funcionamiento
log4j:WARN No appenders could be found for logger (org.apache.axis2.description.AxisOperation).
log4j:WARN Please initialize the log4j system properly.
RESULTADO REMOVE: true
[VALIDADOR] Si el servicio web está configurado con scope por omisión o application puede dar resultados que no sean correctos con el tester
********************** TEST 1 **********************
El admin se logea, cambia la contraseña, log out y login con la nueva
Result admin login (exp true) : true
Result admin changePwd (exp true) : true
Result admin login (exp true) : true
Result admin changePwd AGAIN (exp true) : true
Result admin logout  (exp true) : true

SUCCESS
********************** TEST 2 **********************
El admin se logea, añade dos usuarios iguales, el segundo debe fallar, y luego logout
Result admin login (exp true) : true
Result add user (exp true) : true
Result add user (exp false because user already exist) : false

SUCCESS
********************** TEST 6 **********************
user2 login (falla), admin login, crea user2, user2 login otro st, remove user1 (falla), admin borra user1 (ok) borra user que no existe (falla)
Result user login (exp false becuase user not registered) : false
Result admin login (exp true) : true
Result add user2 (exp true) : true
Result user2 login (exp true) : true
Result user2 deletes user1 (exp false becuase not allowed) : false
Result admin deletes user1 (exp true) : false
Result admin deletes user500 (exp false bacause user500 didn't exist) : false

FAIL
********************** TEST 8 **********************
user2 login st1 y st2, st1 logout, changpwd en st1 (fail), changpwd en st2
Result user2 login con stub1 (exp true) : true
Result user2 login con stub2 (exp true) : true
Result user2 change pwd con stub1 (exp false because user2 has logout on stub1-session) : false
Result user2 change pwd con stub2 (exp true) : false

FAIL
********************** TEST 10 **********************
user2 login 2 veces en st1, logout, admin login st1 (ok), logout
Result user2 login (exp true) : false
Result user2 login (exp true) : false
Result user2 logout (exp true) : false
Result admin login en mismo stub (exp false) : true
Result user2 logout (exp true) : true

FAIL
********************** TEST 11 **********************
user2 login st1, admin login st2, admin borrar user2, st1 hacer login user2 (fail)
Result user2 login (exp true) : false
Result admin login (exp true) : true
Result admin deletes user2 (exp true): true
Result user2 login (exp fail) cause was removed : false

FAIL
********************** TEST 13 **********************
admin login, crea user4, en otro stub se añade libro sin logear (F), user4 login y añade libro en ese stub(F), admin añade libro en su stub(ok)
Result admin login (exp true) : true
Result admin create user4 (exp true) : true
Result addbook without login (exp fail) : true
Result user4 login (exp true) : true
Result addbook without privileges (exp fail) : false
Result admin addbook (exp true) : false

FAIL
********************** TEST 16 **********************
admin login y borrar un libro que no existe (F)
Result admin login (exp true) : true
Result admin removeBook didn't exist (exp fail) : false

SUCCESS
********************** TEST 19 **********************
sin logear gestbooks from author (F), admin login en otro stub y busca libros de un autor que no está (OK)
Result getBooksAuthos without login (expect false) : true
Result admin login (exp true) : true
Result admin getBooksAuthos (expect true) : true

FAIL
********************** TEST 20 **********************
admin login en dos stubs, en uno añade libros y en otro va consultando lista de libros, ok y primer libro el último añadido
Result admin login (exp true) : true
Result admin login other stub (exp true) : true
Result admin addbook (exp true) : true
Result admin booklist (exp: true): true
First Book should be issn 3 (exp: true): true
Result admin addbook (exp true) : true
Result admin booklist (exp: true): true
First Book should be issn 4 (exp: true): true

SUCCESS
********************** TEST 23 (value: 1)**********************
admin login, añade u6, u6 login en st2, toma libro (ok), devuelve dos veces el libro (ok la 1a y F la 2a)
Result admin login (exp true) : true
Result admin create user6 (exp true) : true
Result user6 login (exp true) : true
Result user6 borrowBook (exp true) : true
Result user6 returnBook (exp true) : true
Result user6 returnBook again (exp false) : false

SUCCESS
********************** TEST 24 **********************
admin login, añade libro, añade user7, u7 login en dos stubs, en uno toma libro (ok) y en otro consulta lista de libros (ok), debe mostrar el último
Result admin login (exp true) : true
Result admin addbook (exp true) : true
Result admin create user7 (exp true) : true
Result user7 login (exp true) : true
Result user7 login (exp true) other stub: true
Result user7 borrowBook (exp true) : true
Result user7 in other stub, print list of borrowed (exp: true and book is correct)true// true

SUCCESS
********************** TEST 26 **********************
admin añade u9, admin añade 2 ejemplares, u9 login en otro stub, u9 toma prestado libro (ok), otra vez (F)
Result admin login (exp true) : true
Result admin create user9 (exp true) : true
Result admin addbook (exp true) : true
Result admin addbook (exp true) : true
Result user9 login (exp true) : true
Result user9 borrowBook (exp true) : true
Result user7 borrowBook again (exp false) : false

SUCCESS
***********************************RESULT******************************
Subtotal pruebas superadas: 7.0

Ahí tienes el resultado de la ejecución.
2  Programación / Java / Re: Me fallan 6 test y no sé por qué en: 22 Junio 2025, 22:31 pm
El código del skeleton son casi 800 lineas de código. El servicio lo estoy desplegando con tomcat y axis.
3  Programación / Java / Me fallan 6 test y no sé por qué en: 22 Junio 2025, 21:24 pm
Estoy haciendo una práctica de servicios web de wsdl de la carrera, y aunque ya la tengo implementada y me pasan 7 test de los 13 que nos han proporcionado, no sé qué es lo que me está fallando en el código. Si alguien me puede echar un cable y le comparto el código o el proyecto y me ayuda a arreglarlo, porque tiene pinta de ser una bobada pero llevo días intentando y no lo consigo XD.
4  Programación / Java / Re: Necesito entregar una práctica urgente en: 9 Junio 2021, 19:41 pm
Me gustaría poder mandar el guión de la práctica tambien, pero no veo que haya ninguna forma de enviar un archivo
5  Programación / Java / Re: Necesito entregar una práctica urgente en: 9 Junio 2021, 19:39 pm
Código
  1. [/// BancoCSP_skel.java
  2. // Lars feat. Julio -- 2021
  3. // esqueleto de código para JCSP
  4. // (peticiones aplazadas)
  5.  
  6. package cc.banco;
  7.  
  8. import org.jcsp.lang.Alternative;
  9. import org.jcsp.lang.AltingChannelInput;
  10. import org.jcsp.lang.Any2OneChannel;
  11. import org.jcsp.lang.CSProcess;
  12. import org.jcsp.lang.Channel;
  13. import org.jcsp.lang.Guard;
  14. import org.jcsp.lang.One2OneChannel;
  15. import org.jcsp.lang.ProcessManager;
  16.  
  17. // otras librerías: estructuras de datos, etc.
  18. //
  19. //
  20. //
  21. // COMPLETAD
  22. //
  23. //
  24. //
  25. //
  26.  
  27.  
  28. public class BancoCSP implements Banco, CSProcess {
  29.  
  30.    // canales: uno por operación
  31.    // serán peticiones aplazadas
  32.    private Any2OneChannel chIngresar;
  33.    private Any2OneChannel chDisponible;
  34.    private Any2OneChannel chTransferir;
  35.    private Any2OneChannel chAlertar;
  36.  
  37.    // clases para peticiones
  38.    // regalamos una como ejemplo
  39.    public class TransferirReq {
  40. // atributos (pueden ser públicos)
  41. String from;
  42. String to;
  43. int value;
  44. One2OneChannel resp;
  45.  
  46. // constructor
  47. public TransferirReq(String from, String to, int value) {
  48.    this.from = from; this.to = to; this.value = value; this.resp = Channel.one2one();
  49. }
  50.    }
  51.  
  52.    public class AlertarReq {
  53. // atributos (pueden ser públicos)
  54. //
  55. // COMPLETAD
  56. //
  57.  
  58. // constructor
  59. //
  60. // COMPLETAD
  61. //
  62.    }
  63.  
  64.    public class IngresarReq {
  65. // atributos (pueden ser públicos)
  66. //
  67. // COMPLETAD
  68. //
  69.  
  70. // constructor
  71. //
  72. // COMPLETAD
  73. //
  74.    }
  75.  
  76.    public class DisponibleReq {
  77. // atributos (pueden ser públicos)
  78. //
  79. // COMPLETAD
  80.  
  81. // constructor
  82. //
  83. // COMPLETAD
  84. //
  85.    }
  86.  
  87.    // constructor de BancoCSP
  88.    public BancoCSP() {
  89. this.chIngresar = Channel.any2one();
  90. this.chAlertar = Channel.any2one();
  91. this.chDisponible = Channel.any2one();
  92. this.chTransferir = Channel.any2one();
  93. new ProcessManager(this).start();
  94.    }
  95.  
  96.    // interfaz Banco
  97.    /**
  98.      * Un cajero pide que se ingrese una determinado valor v a una
  99.      * cuenta c. Si la cuenta no existe, se crea.
  100.      * @param c número de cuenta
  101.      * @param v valor a ingresar
  102.      */
  103.    public void ingresar(String c, int v) {
  104. // comprobar PRE
  105. // COMPLETAD
  106. // crear petición
  107. // COMPLETAD
  108. // enviar petición
  109. // COMPLETAD
  110.    }
  111.  
  112.    /**
  113.      * Un ordenante pide que se transfiera un determinado valor v desde
  114.      * una cuenta o a otra cuenta d.
  115.      * @param o número de cuenta origen
  116.      * @param d número de cuenta destino
  117.      * @param v valor a transferir
  118.      * @throws IllegalArgumentException si o y d son las mismas cuentas
  119.      *
  120.      */
  121.    public void transferir(String o, String d, int v) {
  122. // comprobar PRE
  123. // COMPLETAD
  124. // crear petición
  125. // COMPLETAD
  126. // enviar petición
  127. // COMPLETAD
  128. // esperar confirmación
  129. // COMPLETAD
  130.    }
  131.  
  132.    /**
  133.      * Un consultor pide el saldo disponible de una cuenta c.
  134.      * @param c número de la cuenta
  135.      * @return saldo disponible en la cuenta id
  136.      * @throws IllegalArgumentException si la cuenta c no existe
  137.      */
  138.    public int disponible(String c) {
  139. // crear petición
  140. // COMPLETAD
  141. // enviar petición
  142. // COMPLETAD
  143. // recibir respuesta del servidor
  144. // COMPLETAD
  145. // tratar resultado
  146. //
  147. // COMPLETAD
  148. //
  149. //
  150.    }
  151.  
  152.    /**
  153.      * Un avisador establece una alerta para la cuenta c. La operación
  154.      * termina cuando el saldo de la cuenta c baja por debajo de m.
  155.      * @param c número de la cuenta
  156.      * @param m saldo mínimo
  157.      * @throws IllegalArgumentException si la cuenta c no existe
  158.      */
  159.    public void alertar(String c, int v) {
  160. // crear petición
  161. // COMPLETAD
  162. // enviar petición
  163. // COMPLETAD
  164. // tratar respuesta del servidor
  165. //
  166. // COMPLETAD
  167.    }
  168.  
  169.    // Código del servidor
  170.    public void run() {
  171. // nombres simbólicos para las entradas
  172. final int INGRESAR   = 0;
  173. final int DISPONIBLE = 1;
  174. final int TRANSFERIR = 2;
  175. final int ALERTAR    = 3;
  176.  
  177. // construimos la estructura para recepción alternativa
  178. final Guard[] guards = new AltingChannelInput[4];
  179. guards[INGRESAR]   = chIngresar.in();
  180. guards[DISPONIBLE] = chDisponible.in();
  181. guards[TRANSFERIR] = chTransferir.in();
  182. guards[ALERTAR]    = chAlertar.in();
  183. Alternative servicios = new Alternative(guards);
  184.  
  185. // El estado del recurso debe ir en el servidor (aquí)
  186. // Reutilizar de la práctica de monitores
  187. // COMPLETAD
  188.  
  189. // colecciones para peticiones aplazadas
  190. // reutilizar de monitores si es posible
  191. //
  192. // COMPLETAD
  193. //
  194. //
  195.  
  196. // Bucle principal del servicio
  197. while(true) {
  198.    int servicio = servicios.fairSelect();
  199.  
  200.    switch (servicio) {
  201.    case INGRESAR: {
  202. // recibir petición
  203. // COMPLETAR
  204. // realizar ingreso
  205. //
  206. //
  207. //
  208. break;
  209.    }
  210.    case DISPONIBLE: {
  211. // recibir petición
  212. // COMPLETAD
  213. // responder
  214. // COMPLETAD
  215. //
  216. break;
  217.    }
  218.    case TRANSFERIR: {
  219. // recibir petición
  220. // COMPLETAD
  221. // encolar petición
  222. // (alternativamente, se puede comprobar CPRE y
  223. //  solo encolar si estrictamente necesario)
  224. //
  225. //
  226. //  COMPLETAD
  227. //
  228. //
  229. break;
  230.    }
  231.    case ALERTAR: {
  232. // recibir petición
  233. // COMPLETAD
  234. // encolar petición
  235. // (alternativamente, se puede comprobar CPRE y
  236. //  solo encolar si estrictamente necesario)
  237. //
  238. //
  239. // COMPLETAD
  240. //
  241. //
  242. break;
  243.    }
  244.    }// END SWITCH
  245.  
  246.    // tratamiento de peticiones aplazadas
  247.    // en parte, reutilizar de monitores
  248.    //
  249.    //
  250.    //
  251.    //
  252.    //
  253.    //
  254.    //
  255.    //
  256.    //
  257.    //
  258.    //
  259.    //
  260.    //
  261.    //
  262.    //
  263.    //
  264.    //
  265.    // COMPLETAD
  266.    //
  267.    //
  268.    //
  269.    //
  270.    //
  271.    //
  272.    //
  273.    //
  274.    //
  275.    //
  276.    //
  277.    //
  278.    //
  279.    //
  280.    //
  281.    //
  282.    //
  283.    //
  284.    //
  285.    //
  286.    //
  287.    //
  288.    //
  289.    //
  290.  
  291.    // no debemos volver al inicio del bucle
  292.    // de servicio mientras haya alguna
  293.    // petición pendiente que se pueda atender !!
  294. }// END BUCLE SERVICIO
  295.    }// END run SERVIDOR
  296.  
  297.    // cualquier otro código auxiliar que necesitéis...
  298.  
  299. }
  300.  
  301. ]
  302. Este es el esqueleto que me ayudo a hacer mi profesor
6  Programación / Java / Re: Necesito entregar una práctica urgente en: 9 Junio 2021, 19:01 pm
Realmente solo pedía ayuda porque no me da tiempo a hacerla, pero gracias de todas maneras.Había hecho la primera parte, pero la segunda parte ni idea, es para el dia 11, pero bueno, gracias por la aclaración.
7  Programación / Java / Necesito entregar una práctica urgente en: 9 Junio 2021, 18:38 pm
Es una practica que cuenta de 2 subprácticas , la primera ya la he realizado, que se hace mediante monitores, pero la segunda no tengo idea de como hacerla, se realiza mediante el envio de mensajes sincronos en java o jcsp.Al no disponer de mucho tiempo, escribo esto por aquí por si alguien me puede solucionar esto.Si alguien puede que me contacte por discord  xxxxxx

Editado: No poner datos de contacto, leer las normas del foro antes de postear.


Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines