Al no tener una respuesta cuando llamo a mi servicio web petición GET

user12228689:

Soy un estudiante que necesita ayuda con un problema de tarea. Lo que pasa es que escribí un servicio web usando resto analizador SAX con el fin de mostrar un archivo XML que he almacenado en la misma carpeta del proyecto. El problema es que cuando utilizo el camino que se le ha proporcionado, no está sucediendo nada. Probablemente estoy haciendo algo mal en mi código. Aquí está:

package com.crunchify.restjersey;

import java.io.IOException;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;

import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;

@Path("/saxbooksxml")
public class SaxBooksXml {

    public SaxBooksXml(){}

    @GET
    @Produces(MediaType.APPLICATION_XML)
    public void gofindsaxbooks(){
        SAXParserFactory factory = SAXParserFactory.newInstance();
        SAXParser saxParser = null;
        try {
            saxParser = factory.newSAXParser();
        } catch (ParserConfigurationException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        } catch (SAXException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        DefaultHandler handler = new DefaultHandler(){
            boolean bauthor = false;
            boolean btitle = false;
            boolean bgenre = false;
            boolean bprice = false;
            boolean bpublish_date = false;
            boolean bdescription = false;

            public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException{
                if(qName.equalsIgnoreCase("author")){
                    bauthor = true;
                }
                if(qName.equalsIgnoreCase("title")){
                    btitle = true;
                }
                if(qName.equalsIgnoreCase("genre")){
                    bgenre = true;
                }
                if(qName.equalsIgnoreCase("price")){
                    bprice = true;
                }
                if(qName.equalsIgnoreCase("publish_date")){
                    bpublish_date = true;
                }
                if(qName.equalsIgnoreCase("description")){
                    bdescription = true;
                }
            }

            public void endElement(String uri, String localName, String qName) throws SAXException{

            }

            public void characters(char ch[], int start, int lenght) throws SAXException{
                if(bauthor){
                    System.out.println("author: "+new String(ch, start, lenght));
                    bauthor = false;
                }
                if(btitle){
                    System.out.println("title: "+new String(ch, start, lenght));
                    btitle = false;
                }
                if(bgenre){
                    System.out.println("genre: "+new String(ch, start, lenght));
                    bgenre = false;
                }
                if(bprice){
                    System.out.println("price: "+new String(ch, start, lenght));
                    bprice = false;
                }
                if(bpublish_date){
                    System.out.println("publish_date: "+new String(ch, start, lenght));
                    bpublish_date = false;
                }
                if(bdescription){
                    System.out.println("description: "+new String(ch, start, lenght)+"\n");
                    bdescription = false;
                }
            }

        };

        try {
            saxParser.parse("Books.xml", handler);
        } catch (SAXException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

Esto es una impresión de una parte del archivo que estoy tratando de analizar. La idea es mostrarlo en el navegador exactamente lo mismo.

introducir descripción de la imagen aquí

Mike Adamenko:

Su método de gofindsaxbooksretornosvoid

Cambiarlo, como a continuación:

        @GET
        @Produces(MediaType.APPLICATION_XML)
        public Response gofindsaxbooks()
        {

            return Response.status(200).entity("Test XML created").build();
        }

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=362511&siteId=1
Recomendado
Clasificación