小编Joa*_*elt的帖子

Jetty Cross Origin过滤器

我已配置Jetty的跨源过滤器,但我继续收到以下错误.有谁知道什么是错的以及如何解决它?错误消息下面是我的覆盖描述符(即补充web.xml)

错误:

Origin http://localhost:8090 is not allowed by Access-Control-Allow-Origin.
Run Code Online (Sandbox Code Playgroud)

覆盖描述符:

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
 <filter>
   <filter-name>cross-origin</filter-name>
   <filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class>
   <init-param>
       <param-name>allowedOrigins</param-name>
       <param-value>*</param-value>
   </init-param>
   <init-param>
       <param-name>allowedMethods</param-name>
       <param-value>*</param-value>
   </init-param>
   <init-param>
       <param-name>allowedHeaders</param-name>
       <param-value>*</param-value>
   </init-param>
 </filter>
 <filter-mapping>
     <filter-name>cross-origin</filter-name>
     <filter-pattern>/*</filter-pattern>
 </filter-mapping>
</web-app>
Run Code Online (Sandbox Code Playgroud)

请求标题

Accept:*/*
Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Access-Control-Request-Headers:Origin, Content-Type, Accept
Access-Control-Request-Method:POST
Connection:keep-alive
Host:localhost:8080
Origin:http://localhost:8090
Referer:http://localhost:8090/home
User-Agent:Mozilla/5.0 (X11; Linux i686) AppleWebKit/535.8 (KHTML, like Gecko) Chrome/17.0.942.0
Run Code Online (Sandbox Code Playgroud)

响应标题

Allow:POST,GET,OPTIONS,HEAD
Content-Length:0
Date:Wed, 30 Nov 2011 02:13:21 GMT
Server:Jetty(7.5.4.v20111024)
Run Code Online (Sandbox Code Playgroud)

java ajax jetty cross-domain cors

32
推荐指数
4
解决办法
5万
查看次数

如何在Jetty中禁用SSLv3协议以防止Poodle攻击

是否有任何特定的排除列表禁用SSLv3密码不是TLSv1/2.

我有码头8,升级到9现在不是一个选择.我目前的jetty-ssl.xml如下所示

<Configure id="Server" class="org.eclipse.jetty.server.Server">
<Call name="addConnector">
    <Arg>
        <New class="org.eclipse.jetty.server.ssl.SslSelectChannelConnector">
            <Arg>
                <New class="org.eclipse.jetty.http.ssl.SslContextFactory">
                    .........
                </New>
            </Arg>
            <Set name="ExcludeCipherSuites">
                <Array type="java.lang.String">             
                <Item>SSL_RSA_WITH_NULL_MD5</Item>
                <Item>SSL_RSA_WITH_NULL_SHA</Item>
                <Item>SSL_RSA_EXPORT_WITH_RC4_40_MD5</Item>
                <Item>SSL_RSA_WITH_RC4_128_MD5</Item>
                <Item>SSL_RSA_WITH_RC4_128_SHA</Item>
                <Item>SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5</Item>
                <Item>SSL_RSA_WITH_IDEA_CBC_SHA</Item>
                <Item>SSL_RSA_EXPORT_WITH_DES40_CBC_SHA</Item>
                <Item>SSL_RSA_WITH_DES_CBC_SHA</Item>
                <Item>SSL_RSA_WITH_3DES_EDE_CBC_SHA</Item>
                <Item>SSL_DH_DSS_EXPORT_WITH_DES40_CBC_SHA</Item>
                <Item>SSL_DH_DSS_WITH_DES_CBC_SHA</Item>
                <Item>SSL_DH_DSS_WITH_3DES_EDE_CBC_SHA</Item>
                <Item>SSL_DH_RSA_EXPORT_WITH_DES40_CBC_SHA</Item>
                <Item>SSL_DH_RSA_WITH_DES_CBC_SHA</Item>
                <Item>SSL_DH_RSA_WITH_3DES_EDE_CBC_SHA</Item>
                <Item>SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA</Item>
                <Item>SSL_DHE_DSS_WITH_DES_CBC_SHA</Item>
                <Item>SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA</Item>
                <Item>SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA</Item>
                <Item>SSL_DHE_RSA_WITH_DES_CBC_SHA</Item>
                <Item>SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA</Item>
                <Item>SSL_DH_anon_EXPORT_WITH_RC4_40_MD5</Item>
                <Item>SSL_DH_anon_WITH_RC4_128_MD5</Item>
                <Item>SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA</Item>
                <Item>SSL_DH_anon_WITH_DES_CBC_SHA</Item>
                <Item>SSL_DH_anon_WITH_3DES_EDE_CBC_SHA</Item>
                <Item>SSL_FORTEZZA_KEA_WITH_NULL_SHA</Item>
                <Item>SSL_FORTEZZA_KEA_WITH_FORTEZZA_CBC_SHA</Item>
                <Item>SSL_FORTEZZA_KEA_WITH_RC4_128_SHA</Item>
                <Item>SSL_DHE_RSA_WITH_AES_128_CBC_SHA</Item>
                <Item>SSL_RSA_WITH_AES_128_CBC_SHA</Item>   
                </Array>
            </Set>
        </New>
    </Arg>
</Call>
Run Code Online (Sandbox Code Playgroud)

还是当我运行"sslscan --no-failed --ssl3 localhost:443"时,我得到了

    Supported Server Cipher(s):
  Accepted  SSLv3  128 bits  DHE-RSA-AES128-SHA
  Accepted  SSLv3  128 bits  AES128-SHA

Prefered Server Cipher(s):
  SSLv3  128 bits …
Run Code Online (Sandbox Code Playgroud)

java security ssl jetty

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

WebSocket如何压缩消息?

JSON.stringify显然不是很节省空间.例如,[123456789,123456789]在需要大约5时占用20多个字节.在发送到流之前,websocket会压缩其JSON吗?

javascript json websocket socket.io

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

Jetty HttpParser Full

我在我的日志文件中收到这些警告:

WARN  2013-01-15 00:08:15,550 org.eclipse.jetty.http.HttpParser- HttpParser Full for SCEP@2d0a7424{l(/10.13.61.19:17602)<->r(/10.118.190.35:80),d=true,open=true,ishut=false,oshut=false,rb=false,wb=false,w=true,i=1r}-{AsyncHttpConnection@22e7a7e3,g=HttpGenerator{s=0,h=-1,b=-1,c=-1},p=HttpParser{s=-1,l=2355,c=-3},r=41} 
WARN  2013-01-15 00:08:17,275 org.eclipse.jetty.http.HttpParser- HttpParser Full for SCEP@3e428386{l(/10.13.61.19:17605)<->r(/10.118.190.35:80),d=true,open=true,ishut=false,oshut=false,rb=false,wb=false,w=true,i=1r}-{AsyncHttpConnection@40a77d2a,g=HttpGenerator{s=0,h=-1,b=-1,c=-1},p=HttpParser{s=-5,l=108,c=-3},r=57} 
WARN  2013-01-15 00:09:34,560 org.eclipse.jetty.http.HttpParser- HttpParser Full for SCEP@39c117ad{l(/10.13.61.19:17708)<->r(/10.118.190.35:80),d=true,open=true,ishut=false,oshut=false,rb=false,wb=false,w=true,i=1r}-{AsyncHttpConnection@11c95f6f,g=HttpGenerator{s=0,h=-1,b=-1,c=-1},p=HttpParser{s=-1,l=1940,c=-3},r=522} 
WARN  2013-01-15 00:09:37,185 org.eclipse.jetty.http.HttpParser- HttpParser Full for SCEP@574e9325{l(/10.13.61.19:17722)<->r(/10.118.190.35:80),d=true,open=true,ishut=false,oshut=false,rb=false,wb=false,w=true,i=1r}-{AsyncHttpConnection@6e997c49,g=HttpGenerator{s=0,h=-1,b=-1,c=-1},p=HttpParser{s=-1,l=2675,c=-3},r=101} 
WARN  2013-01-15 00:09:37,281 org.eclipse.jetty.http.HttpParser- HttpParser Full for SCEP@6838d5cb{l(/10.13.61.19:17726)<->r(/10.118.190.35:80),d=true,open=true,ishut=false,oshut=false,rb=false,wb=false,w=true,i=1r}-{AsyncHttpConnection@d9f6b12,g=HttpGenerator{s=0,h=-1,b=-1,c=-1},p=HttpParser{s=-1,l=2641,c=-3},r=4} 
WARN  2013-01-15 00:10:22,723 org.eclipse.jetty.http.HttpParser- HttpParser Full for SCEP@6f282964{l(/10.13.61.19:17805)<->r(/10.118.190.35:80),d=true,open=true,ishut=false,oshut=false,rb=false,wb=false,w=true,i=1r}-{AsyncHttpConnection@44627fa1,g=HttpGenerator{s=0,h=-1,b=-1,c=-1},p=HttpParser{s=-1,l=2211,c=-3},r=61} 
Run Code Online (Sandbox Code Playgroud)

有谁知道他们的意思或如何解决它们?我正在使用jetty-8.1.5.v20120716.如你所见,它们经常发生.

jetty

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

Websocket框架大小限制

我通过websockets发送大量的JSON数据.JSON可能有超过1000个条目.由于帧大小限制,Websocket协议自动将JSON分成帧,这是无法帮助的.因为我们无法改变websockets的框架大小.

问题:

当我尝试使用JSON.parse它来评估我的JSON时,给出了一个解析错误,这很明显,因为这些帧不是完整的JSON对象.所有这些都发生在Websocket onmessage事件回调中.如何在不同的帧中接收巨大的JSON并仍然能够解析它?我试图在onmessage仍然错误仍然存​​在的情况下连接帧.

问题:

如何正确地破解破解的JSON?

javascript string json websocket atmosphere

16
推荐指数
2
解决办法
4万
查看次数

如何为java junit测试运行jetty服务器

我正在尝试编写集成测试以在本地启动jetty服务器,然后使用客户端与其余URI进行通信并调用下游的业务逻辑.但是,当我启动我的jetty服务器时,它不会放弃控件,因此我的客户端不会被执行.所以我使用线程在不同的线程中启动我的码头,但是,线程在客户端调用之前完成,它表示连接被拒绝.我可以采取任何方法吗?

@Test
public void testPerform() {

    final JettyServer jettyServer = JettyServer.create();
    jettyServer.buildJettyServer(ServletContextHandler.SESSIONS, "/", 8080, TestResource.class);

    Runnable runnable = new Runnable()
    {
        @Override
        public void run()
        {
            jettyServer.start();
        }
    };

    new Thread(runnable).start();

    final javax.ws.rs.client.Client client = ClientBuilder.newClient();

    final Response response = client.target("http://localhost:8080/test").request().post(Entity.text(""));

    jettyServer.stop();
}
Run Code Online (Sandbox Code Playgroud)

java rest jetty embedded-jetty

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

org.eclipse.jetty.io.EofException:上传大文件时抛出的早期EOF

当我上传大文件(大约50 MB)时,我得到 org.eclipse.jetty.io.EofException:早期的EOF感知.我的码头服务器版本是" 9.2.9.v20150224 ".Below是堆栈跟踪

org.eclipse.jetty.io.EofException: Early EOF
at org.eclipse.jetty.server.HttpInput$3.noContent(HttpInput.java:505) ~[jetty-server-9.2.9.v20150224.jar:9.2.9.v20150224]
at org.eclipse.jetty.server.HttpInput.read(HttpInput.java:124) ~[jetty-server-9.2.9.v20150224.jar:9.2.9.v20150224]
at org.apache.http.entity.InputStreamEntity.writeTo(InputStreamEntity.java:142) ~[httpcore-4.4.1.jar:4.4.1]
at org.apache.http.entity.HttpEntityWrapper.writeTo(HttpEntityWrapper.java:96) ~[httpcore-4.4.1.jar:4.4.1]
at org.apache.http.impl.client.EntityEnclosingRequestWrapper$EntityWrapper.writeTo(EntityEnclosingRequestWrapper.java:112) ~[httpclient-4.5.jar:4.5]
at org.apache.http.impl.entity.EntitySerializer.serialize(EntitySerializer.java:117) ~[httpcore-4.4.1.jar:4.4.1]
at org.apache.http.impl.AbstractHttpClientConnection.sendRequestEntity(AbstractHttpClientConnection.java:265) ~[httpcore-4.4.1.jar:4.4.1]
at org.apache.http.impl.conn.AbstractClientConnAdapter.sendRequestEntity(AbstractClientConnAdapter.java:231) ~[httpclient-4.5.jar:4.5]
at org.apache.http.protocol.HttpRequestExecutor.doSendRequest(HttpRequestExecutor.java:237) ~[httpcore-4.4.1.jar:4.4.1]
at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:122) ~[httpcore-4.4.1.jar:4.4.1]
at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:685) ~[httpclient-4.5.jar:4.5]
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:487) ~[httpclient-4.5.jar:4.5]
at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:882) ~[httpclient-4.5.jar:4.5]
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:117) ~[httpclient-4.5.jar:4.5]
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55) ~[httpclient-4.5.jar:4.5]
at org.apache.http.client.HttpClient$execute$2.call(Unknown Source) ~[na:na]

org.eclipse.jetty.io.EofException
at org.eclipse.jetty.io.ChannelEndPoint.flush(ChannelEndPoint.java:192)
at org.eclipse.jetty.io.WriteFlusher.flush(WriteFlusher.java:408)
at org.eclipse.jetty.io.WriteFlusher.write(WriteFlusher.java:302)
at org.eclipse.jetty.io.AbstractEndPoint.write(AbstractEndPoint.java:129)
at org.eclipse.jetty.server.HttpConnection$SendCallback.process(HttpConnection.java:676)
at org.eclipse.jetty.util.IteratingCallback.processing(IteratingCallback.java:246)
at org.eclipse.jetty.util.IteratingCallback.iterate(IteratingCallback.java:208)
at org.eclipse.jetty.server.HttpConnection.send(HttpConnection.java:471)
at org.eclipse.jetty.server.HttpChannel.sendResponse(HttpChannel.java:763)
at org.eclipse.jetty.server.HttpChannel.write(HttpChannel.java:801)
at …
Run Code Online (Sandbox Code Playgroud)

java jetty apache-httpclient-4.x netflix-zuul

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

启动Jetty服务器时扫描条目"module-info.class"时出错

我最近在启动java服务器时看到了这个.有没有人见过这个?如果是这样的话怎么办?我可以确认jar和module-info.class存在于相关路径中.

 MultiException[java.lang.RuntimeException: Error scanning entry module-info.class from jar
 file:jetty/9.2.4.v20141103/tempDirectory/webapp/WEB-INF/lib/slf4j-api-1.8.0-alpha2.jar, java.lang.RuntimeException: Error scanning entry module-info.class from jar
 file:jetty/9.2.4.v20141103/tempDirectory/webapp/WEB-INF/lib/log4j-over-slf4j-1.8.0-alpha2.jar, java.lang.RuntimeException: Error scanning entry module-info.class from jar
 file:jetty/9.2.4.v20141103/tempDirectory/webapp/WEB-INF/lib/jcl-over-slf4j-1.8.0-alpha2.jar] at
 org.eclipse.jetty.annotations.AnnotationConfiguration.scanForAnnotations(AnnotationConfiguration.java:535) at
 org.eclipse.jetty.annotations.AnnotationConfiguration.configure(AnnotationConfiguration.java:446) at
 org.eclipse.jetty.webapp.WebAppContext.configure(WebAppContext.java:473) at
 org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1331) at
 org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:741) at
 org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499) at
 org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) at
 org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:41) at
 org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:186) at
 org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:498) at
 org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:146) at
 org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:180) at
 org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:64) at 
 org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:609) at 
 org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:528) at
 org.eclipse.jetty.util.Scanner.scan(Scanner.java:391) at
 org.eclipse.jetty.util.Scanner.doStart(Scanner.java:313) at
 org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) at
 org.eclipse.jetty.deploy.providers.ScanningAppProvider.doStart(ScanningAppProvider.java:150) at
 org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) at
 org.eclipse.jetty.deploy.DeploymentManager.startAppProvider(DeploymentManager.java:560) at
 org.eclipse.jetty.deploy.DeploymentManager.doStart(DeploymentManager.java:235) at
 org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) at
 org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:132) at 
 org.eclipse.jetty.server.Server.start(Server.java:387) at
 org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:114) at
 org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61) at …
Run Code Online (Sandbox Code Playgroud)

java eclipse jetty slf4j

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

java.io.File中的空字符是否对存在检查有效?

当在文件名中遇到null时java.io.File,该字符及其后的所有字符都将被忽略,从而导致一些奇怪的行为File.exists().

这种行为是否是java.io.File.exists()我错过的某些方面?

例:

package os;

import java.io.File;
import java.io.IOException;

public class FileNullCheck
{
    public static void main(String[] args)
    {
        File tmp = new File("a.txt");
        try
        {
            tmp.createNewFile();
        }
        catch (IOException e)
        {
            e.printStackTrace();
            return;
        }

        String a = "a.txt";
        System.out.printf("a.txt exists: %b (len=%d)%n",new File(a).exists(),a.length());

        String anull = new String(new byte[] { 'a', '.', 't', 'x', 't', 0x00 });
        System.out.printf("a.txt (null) exists: %b (len=%d)%n",new File(anull).exists(),anull.length());

        String anullx = new String(new byte[] { 'a', '.', 't', …
Run Code Online (Sandbox Code Playgroud)

java file-io operating-system

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

Jetty WebSocket api与标准JSR 356 API相比

码头9支持两种它自己的Jetty的WebSocket API,以及标准的JSR 356 API,为我承担其历史原因(Jetty的API 之前最后JSR 356).

我查看了两个API的基本文档,以及一些示例.这两个API看起来相当完整且非常相似.但是,我需要为我正在编写的新项目选择一个而不是另一个,并且我希望避免使用可能在将来被弃用的API,或者可能会变得功能不足.

那么两者之间是否有任何重要的区别,除了一个标准化的明显事实?

java jetty jsr websocket jetty-9

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