gpt4 book ai didi

java - Wildfly:Web 服务已部署但不可用

转载 作者:行者123 更新时间:2023-12-01 16:30:11 25 4
gpt4 key购买 nike

问题描述:

我想通过 Wildfly 部署 Web 服务并且它已部署,但我无法通过 Web 浏览器访问它。

这就是我所做的:

  1. 我跑standalone.sh
  2. 我使用 mvn clean package wildfly:deploy 部署项目

然后我尝试通过网络浏览器访问我的网络服务 http://localhost:8080/lab-ear/Hello?wsdl但我只得到:“404 - 未找到”

maven logs 的片段部署时。
这里是logs初始化时从 Wildfly 服务器获取。
这里Wildfly logs在部署期间。

其他详细信息:

我完成了另一个项目,Web 服务可以正常工作,但还存在其他问题,所以我从头开始一切。

This image是这两个项目的结构比较。左边是旧项目,右边是新项目。

重要的是,在新项目中我没有得到 web目录。

也许相关问题:
Wildfly : application deployed but not running

还有,这样的项目需要使用Intellij IDEA吗?

编辑

在我的 EJB 模块中,我有一个类 Hello在 pl.edu.agh.soa 包中

我试图改变这一点:

@Stateless
@WebService
public class Hello {
...

至:

@Stateless(name = "Hello")
@WebService(name = "HelloService")
public class Hello {
...

但它也不起作用。

最佳答案

我能够仅使用代码运行一个简单的“HelloWorld”类型 JAX-WS 服务:

import javax.ejb.Stateless;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;

@WebService
@SOAPBinding(style = SOAPBinding.Style.RPC)
@Stateless
public class HelloWorld {

@WebMethod
public String sayHello( String name ) {
return "Hello " + name;
}
}

从此我可以访问 URL http://localhost:8080/<web-app-name>/HelloWorld?wsdl 。这是 Wildfly 18 中的内容。

问题是您没有指定 @WebMethod 。虽然该类已正确标记,但其中没有任何可“运行”的内容。

此外,虽然它确实适用于 @Stateless JAX-WS 不需要但您的代码可能需要的 EJB 注释。

关于java - Wildfly:Web 服务已部署但不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62060448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com