java - 如何在 session Bean (EJB) 中获取请求参数?

标签 java web-services jakarta-ee ejb

我在 HTML 页面中的按钮是:

<a id="showTrail" href="/resources/showTrail?roy=show" target="iframe_a">
  <button>Show Trail</button>
</a>

我的 Java 网络服务是:

package webServices;

import javax.ejb.EJB;
import javax.ejb.Stateless;

import javax.ws.rs.Path;
import javax.ws.rs.GET;
import javax.ws.rs.PUT;
import javax.ws.rs.Produces;
import javax.ws.rs.Consumes;

/**
 * REST Web Service
 *
 * @author mkuchtiak
 */

@Stateless
@Path("/showTrail")
public class ShowTrail{

    @EJB
    private NameStorageBean nameStorage;

    @GET
    @Produces("text/html")
    public String getXml() {
        //String abc = request.getParameter("roy");
        return "<html><body><h1>Hello "+nameStorage.getName()+"!</h1></body></html>";
    }

    @PUT
    @Consumes("text/plain")
    public void putXml(String content) {
        nameStorage.setName(content);
    }

}


如何从 HTML 获取请求参数? 下面这行行得通吗?

String abc = request.getParameter("roy");


我想发送一个 HttpRequest 作为参数来发送更多参数,然后发送“roy”

最佳答案

使用 @QueryParam注解。这样你就不需要自己摆弄 request.getParameter()

Java代码

@GET
@Produces("text/html")
public String getXml(@QueryParam("roy") String roy, 
                     @QueryParam("someInt") int someInt,
                     @QueryParam("orderBy") List<String> orderBy) {

HTML

<a id="showTrail" href="/resources/showTrail?roy=show&someInt=4711&orderBy=age&orderBy=name" target="iframe_a">
  <button>Show Trail</button>
</a>

关于java - 如何在 session Bean (EJB) 中获取请求参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16763417/

相关文章:

java - 如何在jsf 2中使用参数 "javax.faces.FACELETS_SUFFIX"

java - 如何在 Jetty 上使用 JASPI/JASPIC?

c# - Java 6语言与C#3.0语言对比

java - 将字符串转换为 byte[] 以使内容保持不变

Java execute() 与 executeUpdate() 刷新 Postgresql 中的物化 View

java - 无法为JAX-B生成架构,仅在CORS调用REST服务期间发生

java.lang.NoSuchMethodError : javax. ws.rs.core.MultivaluedMap.addAll(Ljava/lang/Object;[Ljava/lang/Object;)V

web-services - 设计还是实现?

java - 在 amazon-sqs-java-messaging-lib 中,numberOfMessagesToPrefetch 0 或 1 有什么区别?

java - 如何使用 EAR 中提供的依赖项取代 Glassfish 内置库?