小编mil*_*use的帖子

解析Json的回应回到了Gatling

我试图解析服务器返回给gatling的json响应.

我对服务器的回复是:

SessionAttribute(
  Session(
    GetServices,
    3491823964710285818-0,
    Map(
      gatling.http.cache.etagStore -> Map(https://api.xyz.com/services -> ), 
      gatling.http.cache.lastModifiedStore -> Map(https://api.xyz.com/services -> ),
      myresponse -> {
        "created":"2014-12-16T22:06:59.149+0000",
        "id":"x8utwb2unq8uey23vpj64t65",
        "name":"myservice",
        "updated":"2014-12-16T22:06:59.149+0000",
        "version":null
      }),
    1418767654142,622,
    OK,List(),<function1>),id)
Run Code Online (Sandbox Code Playgroud)

我在我的脚本中这样做:

val scn = scenario("GetServices")
          .exec(http("Get all Services")
          .post("/services")
          .body(StringBody("""{ "name": "myservice" }""")).asJSON
          .headers(sentHeaders)
          .check(jsonPath("$")
          .saveAs("myresponse"))
).exec(session => {
  println(session.get("id"))
  session
})
Run Code Online (Sandbox Code Playgroud)

它仍在打印整个响应.我怎样才能检索到的id是"x8utwb2unq8uey23vpj64t65"什么?

json scala gatling

11
推荐指数
1
解决办法
2万
查看次数

java.lang.ClassNotFoundException:javax.servlet.jsp.SkipPageException

When i run the jsp page i am getting the following error. 
Web sever : Tomcat 6.0 , using Struts 
java.lang.ClassNotFoundException: javax.servlet.jsp.SkipPageException 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680) 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526) 
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:128) 
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66) 
at org.apache.jsp.jsp.login.Main_005ffit_jsp._jspService(Main_005ffit_jsp.java:2846) 
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:386) 
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436) 
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374) 
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) 
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069) 
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455) 
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279) 
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) 
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) …
Run Code Online (Sandbox Code Playgroud)

java jsp struts classnotfoundexception

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

使用选项类型删除是否需要if语句?

我正在阅读Scala中的函数式编程,以下是它为使用Option类型而不是检查get for 提供的两个优点null:

  1. 它允许错误无声地传播 - 调用者可能忘记检查这种情况,并且不会被编译器警告,这可能导致后续代码无法正常工作.通常,在代码之后很久才会检测到错误.

  2. 除了容易出错之外,它还会在呼叫站点产生大量样板代码,并使用显式if语句来检查调用者是否收到了"真实"结果.如果碰巧调用多个函数,则会放大此样板文件,每个函数都使用必须以某种方式检查和聚合的错误代码.

对于第2点.虽然不必检查null仍然必须检查Option类型是否包含SomeNone.该if检查不除,它只是在做更明确的,而不是一个类型的是null它可能不包含值.这是正确的解释吗?

虽然我引用了Scala一书Option,但Java 8中也提供了类型,因此我认为在Java中也是有效的.

java lambda functional-programming scala optional

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

如何更改Ireport 4.5中的日期格式

我已经给出了文本字段表达式new.java.util.Date()和模式MMMMM dd, yyyy作为上述格式.

日期必须显示如下:jan 13, 2012但它以其他格式显示:Fri Jan 13 08:30:12 IST 2012.

那么如何以上述格式打印日期.在预览中有一件事如前所述正确显示日期,但在我的应用程序中它显示Fri Jan 13 08:30:12 IST 2012格式.有没有办法让它正常工作?

java jasper-reports ireport

3
推荐指数
1
解决办法
2万
查看次数

每 x 天滚动一次的 logback 文件名模式

我找到了一些预定义的fileNamePatterns TimeBasedRollingPolicy

这是每分钟都会做的一个。

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>logfile.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">      
      <fileNamePattern>logfile.%d{yyyy-MM-dd_HH-mm}.log</fileNamePattern>
    </rollingPolicy>
  </appender>
Run Code Online (Sandbox Code Playgroud)

有谁知道我如何每 x 天执行此操作?

我可以延长吗RollingFileAppender?我正在 Scala 中做这个。

scala logback rollingfileappender slf4j

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

为Scala播放2.2:是否可以修改传入请求的会话?

我正在尝试使用动作合成将假用户添加到Session.

def GuestAction(f: Request[AnyContent] => Result): Action[AnyContent] = {
  Action { request =>
    var myUser = searchUser(request.session)
    if ( myUser == null ) {
       myUser = newUser()
    }
    f(request).withSession("user" -> myUser)
  }
}
Run Code Online (Sandbox Code Playgroud)

在我的控制器中有

def action1 = GuestAction { implicit request =>
   // My code
   Ok()
}

def action2 = GuestAction { implicit request =>
   val user = request.session.get("user").get
   // My code
   Ok()
}
Run Code Online (Sandbox Code Playgroud)

当我打开Chrome浏览器并浏览到指向"action1"的路线然后浏览到指向"action2"的路线时,一切正常:我有一个新用户并且它已附加到会话中.相反,当我打开Chrome并首先浏览到指向"action2"的路径时,我收到错误,因为我的"request.session"为空,这很明显:使用.withSession()会话附加到Result,而不是来电请求.因此,为了使这项工作,我需要将会话密钥/值对附加到传入请求 - 就像它可能的那样FakeRequest.withSession(),但是没有这样的方法Request.

你有什么建议来解决这个问题?

scala playframework playframework-2.2

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

ArrayList 索引越界异常

最近在使用 arrayList 时,我发现了一个奇怪的问题。我想在数组列表中保留 2 个元素,并希望在元素 0 中保留 object1,在 element1 中保留 object2。

我在循环中决定这个。

当它碰巧添加第一个元素时,它会抛出 indexOutofBounds。根据java doc,因为索引大于大小,所以这样做。

public static void main(String[] args) 
    {
        ArrayList<String> list = new ArrayList<String>();
        list.add(1,"SECONDITEM"); // throwing  due to size is not set
        list.add(0,"FIRSTITEM");

        int postn=0;
        for(String item:list){

            System.out.println("Position "+postn+" :"+item);
            postn++;
        }
    }
Run Code Online (Sandbox Code Playgroud)

然后我尝试将其他项目设置为 0,1 元素中的占位符并尝试做同样的事情

    public static void main(String[] args) 
    {
        ArrayList<String> list = new ArrayList<String>();
        list.add(0,"x");
        list.add(1,"y");

        list.add(1,"SECONDITEM");

        list.add(0,"FIRSTITEM");

        int postn=0;
        for(String item:list){

            System.out.println("Position "+postn+" :"+item);
            postn++;
        }
    }

    Output:
    Position 0 :FIRSTITEM
    Position 1 …
Run Code Online (Sandbox Code Playgroud)

java replace arraylist indexoutofboundsexception

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