标签: stateless

如果Wicket链接到CSS样式表,为什么页面会有状态?

我有一些Wicket页面,如下所示:

(HomePage.html)

<html>
  <head>
    <title>Front</title>
    <link wicket:id="applicationCss" rel="stylesheet" type="text/css"
          href="stylesheets/application.css"/>
  </head>
  <body>
    <!-- Content unnecessary -->
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

(HomePage.java)

public class HomePage extends AbstractWebPage {
    public HomePage() {
        // Nothing necessary (real application initialises some other links here.)
    }
}
Run Code Online (Sandbox Code Playgroud)

(AbstractWebPage.java)

public abstract class AbstractWebPage extends WebPage {
    protected AbstractWebPage() {
        setStatelessHint(true);

        // *** the trouble-maker:
        add(new ResourceLink<>(
            "applicationCss",
            new CssResourceReference(AbstractWebPage.class,
                                     "stylesheets/application.css")));
    }
}
Run Code Online (Sandbox Code Playgroud)

当我访问我的主页时/admin,浏览器会立即重定向到/admin?0,表明该页面不是无状态的.但是,我唯一添加的是一个链接,据我所知,通过阅读代码,它不是有状态的.

当然,如果我删除<link>HTML 中的标记和AbstractWebPage中的add()语句,页面将返回无状态.

我究竟做错了什么?理想情况下,我希望用户看到的任何URL都是无状态的,但只要在所有页面上都包含样式表,突然之间所有无状态页面都是有状态的,没有明显的原因.

java wicket stateless

1
推荐指数
1
解决办法
752
查看次数

Web应用程序最多应该有多少状态?

我听说网络应用程序应尽可能无状态.但在我看来,经常很难意识到这一点.例如,如果我:

  1. 处理请求
  2. 将用户重定向到起始页面
  3. 想要显示请求的结果?

如果结果有点复杂,那么只是一个可以作为参数传递的字符串(或者我不希望通过URL包含该信息),那么我就无法将2和3结合起来.

我能想到的唯一解决方案是将信息保存为Java程序中的状态.

但这会破坏状态网络应用程序的规则,不是吗?

java servlets web-applications stateless

1
推荐指数
1
解决办法
274
查看次数

无状态wicket页面仍然附加了页面版本URL参数 - 如何调试?

我试图使我的项目的页面完全无状态(更多页面来)和通过去除页面版本号,例如 /mypage/?0

该页面设置statelessHint为true,我也验证了onBeforeRenderisStateless返回true.我还使用@StatelessComponent注释来确保页面及其子组件确实非常无状态.

因此,似乎所有内容都是无状态的,但版本参数仍然附加到URL

我无法附加代码,因为它是一个庞大的构造,包含许多组件和大量的继承.当然,我不希望有人告诉我哪里有问题,而是希望有些人能给我一个暗示何时在Wicket的来源中设置一个断点以找出问题所在.例如,任何人都可以告诉我哪个Wicket类负责决定是否附加版本参数?

彼得,先谢谢你

parameters wicket stateless

1
推荐指数
1
解决办法
1242
查看次数

获取安装在我的Websphere服务器中的EJB无状态bean内的主机和端口

我有一个EJB无状态Bean,由Websphere内的Scheduler自动执行.我的EJB安装在Websphere中.在我的EJB内部,我想向其他应用程序公开的Web服务发出http请求(在同一个服务器内部).我尝试使用相对路径,因为这是我通常在应用程序之间发出请求的方式,但在我的bean中我不知道如何获取主机名和端口来构建URL.

我设法通过这样做得到主机(IP):

InetAddress.getLocalHost().toString();
Run Code Online (Sandbox Code Playgroud)

但我也需要端口号.问题是:如何获取安装EJB应用程序的应用程序服务器(Websphere)的主机和端口号?这可能吗?

这段代码是我尝试发出请求的方式,但这不起作用,因为我需要完整的路径:

URL url = new URL("/MyOtherAppName/myservice");         
connection = (HttpURLConnection)url.openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

connection.setRequestProperty("Content-Length", 
    Integer.toString(urlParameters.getBytes().length));
connection.setRequestProperty("Content-Language", "en-US");  

connection.setUseCaches(false);
connection.setDoOutput(true);
Run Code Online (Sandbox Code Playgroud)

- 编辑1 ----

我认为用户Gas的方法很好,并且使我的应用程序更容易配置.

我按照本指南实现了URL Provider方法:

URL提供程序Websphere

java websphere ejb stateless inetaddress

1
推荐指数
1
解决办法
974
查看次数

Statelessness implies referential transparency?

I have this code

data Slist a = Empty | Scons (Sexp a) (Slist a) 
data Sexp a = AnAtom a | AnSlist (Slist a)
data Fruit = Peach | Apple | Pear | Lemon | Fig deriving (Show,Eq)

sxOccurs oatm sxp =
  let slOC Empty = 0
      slOC (Scons se sls) = (seOC se) + (slOC sls)
      seOC (AnAtom atm) = if (atm == oatm) then 1 else 0
      seOC (AnSlist sla) = slOC sla
  in seOC sxp
Run Code Online (Sandbox Code Playgroud)

As …

haskell stateless referential-transparency

1
推荐指数
1
解决办法
79
查看次数

REST身份验证静态

我不认为'静止'是一个词,但它会做:)

我正在尝试为REST服务(PHP)创建身份验证.我正在努力使服务尽可能无国籍.我在这里阅读(提示#4)你不应该使用$ _SESSION这是有道理的,但它建议使用cookie作为替代.我可能误解了"无国籍"是什么,但我看不出饼干是如何被接受的,我认为令牌是要走的路.

谁能解释一个cookie在无状态休息应用程序和会话中是否可以接受?

php rest stateless

0
推荐指数
1
解决办法
371
查看次数

JPA2.0和EE6使我的实体保持同步

我很擅长在企业应用程序中使用ORM工具.我们正在构建一个使用JPA 2.0和EE6的可扩展应用程序.我正在尝试找到一个很好的模式来构建我的应用程序,但我找不到一种方法来保持我的实体同步(我想集合访问实体的bean).

一个例子:

我有一个小组:

@Entity
public class Group implements Serializable
{
    @Id
    private Long id;
    @OneToMany
    private List<MyUser> myUsers;

    public Group()
    {
    }

    public Long getId()
    {
        return id;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public void addUser(MyUser u)
    {
        myUsers.add(u);
    }
}
Run Code Online (Sandbox Code Playgroud)

我有一个用户

@Entity
public class MyUser implements Serializable
{
    @Id
    private Long id;

    public MyUser()
    {
    }

    public Long getId()
    {
        return id;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

} …
Run Code Online (Sandbox Code Playgroud)

java stateless java-ee-6 jpa-2.0

0
推荐指数
1
解决办法
186
查看次数