2016-08-31 6 views
0

Привет всем, что я новичок в этой веб-сфере ibm, и я написал простой Java-код и выставил его как спокойный.IBM Process Server v8.5.5 throwing 415 Media not supported Ошибка при вызове службы восстановления

класс Application

public class WorkflowResourceApplication extends Application { 
@Override 
public Set<Class<?>> getClasses() { 
    Set<Class<?>> classes = new HashSet<Class<?>>(); 
    classes.add(LibraryServiceImpl.class); 
    return classes; 
} 

}

Сервис

@Path("/books") 
@Produces(MediaType.APPLICATION_JSON) 
@Consumes(MediaType.APPLICATION_JSON) 
public class LibraryServiceImpl implements LibraryService { 

private LibraryDAO libDao = new LibraryImpl(); 

@Path("/getbooks") 
@GET 
public Response getBooks(@QueryParam("format") String format) throws SQLException { 
    return Response.status(Status.OK).entity(new GenericEntity<List<Book>>(libDao.getAllBooks()) { 
    }).status(Status.OK).build(); 

} 

web.xml

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns="http://java.sun.com/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
version="3.0"> 
<display-name>Library</display-name> 
<servlet> 
    <description> 
    JAX-RS Tools Generated - Do not modify</description> 
    <servlet-name>JAX-RS Servlet</servlet-name> 
    <servlet-class>com.ibm.websphere.jaxrs.server.IBMRestServlet</servlet-class> 
    <init-param> 
     <param-name>javax.ws.rs.Application</param-name> 
     <param-value>com.library.nag.restful.application.WorkflowResourceApplication</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 
<servlet-mapping> 
    <servlet-name>JAX-RS Servlet</servlet-name> 
    <url-pattern>/*</url-pattern> 
</servlet-mapping> 

Использование apache подпишитесь, поскольку оно предоставлено по умолчанию. Нет ошибок компиляции. Когда я вижу ответ в почтальоне, код ошибки 415 i.e не поддерживается медиатипом.

Ниже ошибка в моем IBM Business Integrator

00000121 RequestProces I org.apache.wink.server.internal.RequestProcessor logException The following error occurred during the invocation of the handlers chain: WebApplicationException (415 - Unsupported Media Type) with message 'null' while processing GET request 

Но тот же проект работал его кот, когда я развернут, но не с WebSphere v8.5.5.On моего исследования я обнаружил, что после зависимостей следует добавить на мой server.xml

<application location="C:\myproject\target\myapp.war" type="war"> 
<classloader apiTypeVisibility="spec,ibm-api,api,third-party"/> 

Когда я пытался добавить его в server.xml найти на

${PROFILE_HOME}/config/cells/${CELL}/nodes/${NODE}/servers/${SERVER}/server.xml 

Мой сервер даже не start.Where я делаю wrong.Please помочь мне

Спасибо.

ответ

0

На стороне клиента вы делаете вызов с HTTP-заголовком "Accept=application/json"?

+0

Да, я сделал это, но он производит такую ​​же ошибку. – mark

+0

@mark Попробуйте 'Content-Type' вместо этого, см. Мой ответ. –

0

Вы должны конкретно использовать Content-Type: application/json, а не только Accept.

 Смежные вопросы

  • Нет связанных вопросов^_^