我有一个与RESTful服务和MySQL数据库相结合的EJB应用程序。我想在我的Wildfly服务器上部署这个应用程序。我已经配置了一切,到目前为止,当我想通过Wildfly服务器上的Eclipse启动应用程序时,没有任何错误。问题是我不能通过浏览器访问重新源码--我想在浏览器中调用http://localhost:8080/rest-ejb-articleservice/v1/articles来访问我的重新源码,但我得到了404。似乎应用程序没有在我的WebServer上发布。
下面是我启动应用程序时的输出摘录:
我通过右键单击Project-Run on Server来启动应用程序(Wildfly正在正确运行)
java:global/moviewebservice/articleresourceEJB!com.dev.ejbwebservice.articleresourceEJB>java:app/moviewebservice/articleresourceEJB!com.dev.ejbwebservice.articleresourceEJB java:module/articleresourceEJB!com.dev.ejbwebservice/articleresourceEJB
19:08:34,633信息[org.Hibernate.version](ServerService线程池--62)HHH000412:Hibernate Core{5.1.10.Final}19:08:34,633信息[org.Hibernate.cfg.environment](ServerService线程池--62)HHH000206:Hibernate.properties not found 19:08:34,633信息[org.Hibernate.cfg.environment](ServerService线程池--62)HHH000206:Hibernate.properties not found Nate Commons Annotations{5.0.1.Final}19:08:34,789信息[org.jboss.weld.version](MSC服务线程1-2)Weld-000900:2.4.3(Final)19:08:34,930信息[org.jboss.as.clustering.infinispan](ServerService线程池--63)WFlyClinf0002:从ejb容器启动客户端映射缓存19:08:34,945信息[org.jboss.as.jpa](ServerService线程池--62)WFlyJPA0010:启动持久化单元(2的阶段2)服务(ServerService线程池--62)警告:不建议在没有服务器身份验证的情况下建立SSL连接。根据MySQL 5.5.45+、5.6.26+和5.7.6+的要求,如果没有设置explicit选项,则默认情况下必须建立SSL连接。为了符合不使用SSL的现有应用程序,将verifyServerCertificate属性设置为“false”。您需要通过设置usessl=false来显式禁用SSL,或者设置usessl=true并为服务器证书验证提供truststore。
19:08:35,196警告[org.jboss.jca.core.connectionmanager.Pool.strategy.onepool](ServerService线程池--62)IJ000407:MySqlDS没有可用的延迟登记
但是我希望在教程中有类似的内容,一个链接,我可以看到我的ejb在哪个地址上运行。
下面是我的ejb类:
@Path("/v1/articles")
@Stateless
public class ArticleResourceEJB
{
@Inject
private ArticleDAO dao;
public ArticleResourceEJB()
{
System.out.println(ArticleResourceEJB.class.getName() + " created");
}
@POST
@Consumes({"application/xml", "application/json"})
public void insert(ArticleDTO user)
{
System.out.println("insert: " + user);
dao.createArticle(user.getDescription(), user.getPrice());
}
@PUT
@Consumes("application/xml")
public void update(ArticleDTO dto)
{
System.out.println("update to " + dto);
dao.update(dto.toArticle());
}
@DELETE
@Path("{id}")
public void delete(@PathParam("id") int id)
{
System.out.println("delete: " + id);
// TODO
}
@GET
@Produces({"application/xml", "application/json"})
public List<ArticleDTO> findAll()
{
System.out.println("findAll()");
List<Article> list = dao.findAll();
List<ArticleDTO> result = ArticleDTO.toArticleDTOList(list);
System.out.println("size = " + result.size());
return result;
}
@GET
@Path("{id}")
@Produces("application/xml")
public ArticleDTO findById(@PathParam("id") int id)
{
System.out.println("findById(" + id + ")");
Article article = dao.findById(id);
return new ArticleDTO(article);
}
}
好像你把上下文名弄错了。我认为您部署的工件的名称(应用程序的名称)是'MoviewWebService',因此url应该类似于localhost:8080/MoviewService/PathtoYourService/PathtoMethod
我不确定它是否一定是.jar
,我通常会将可部署工件设置为.war
或.ear
以部署到Wildfly。
问题内容: 有时,您需要在servlet / JSP /基于的任何内容中构造指向Web应用程序上下文的完整URL 。类似于 **http://server.name:8080/context/** 。Servlet API没有实现此目的的单一方法。 直接的方法是将所有URL组件附加到,例如 我想知道这种选择是否有问题(速度快10倍): 上述两种方法是否 总是会 产生相同的结果? 问题答案: 它称为
servlet-context.xml 应用程序上下文. xml 调用方法 堆栈跟踪
我们如何使用Spring Boot在Web应用程序构建的Web应用程序上下文中找到所有bean。我看到了许多从应用程序上下文中获取bean但不从Web应用程序上下文中获取bean的示例。
我正在处理一个Spring Boot应用程序,其中我使用该应用程序公开SOAP WebService。我在Spring boot应用程序中使用Apache CFX framework for SOAP impl。我正在使用基于注释的方法。 我在一个bean中的Spring Boot配置文件中设置应用程序上下文时遇到了问题。下面是我的代码。 配置文件如下所示。 现在我有了bean SOAPproce
我正在尝试找到一种方法来显式指定部署到Glassfish的Web应用程序的上下文路径3.1.2.2但到目前为止我还没有运气。有人能对此提供指导吗?背景如下: 我有一个Web应用程序,它由两个单独的Netbean(7.0)项目组成。第一个是Web服务,称为FOWS。第二个是使用FOWS网络服务的面向用户的Web应用程序。它被称为FooApp。 我最近将glassfish升级到3.1.2.2,希望解决