标签: undertow

Wildfly:意外元素'{urn:jboss:domain:4.2} server'

错误:

17:42:50,333 INFO  [org.jboss.as] (MSC service thread 1-6) WFLYSRV0049: WildFly Full 10.0.0.Final (WildFly Core 2.0.10.Final) starting
17:42:50,732 ERROR [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0055: Caught exception during boot: org.jboss.as.controller.persistence.ConfigurationPersistenceException: WFLYCTL0085: Failed to parse configuration
    at org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java:131)
    at org.jboss.as.server.ServerService.boot(ServerService.java:356)
    at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:299)
    at java.lang.Thread.run(Thread.java:745)
Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[2,1]
Message: Unexpected element '{urn:jboss:domain:4.2}server'
    at org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:108)
    at org.jboss.staxmapper.XMLMapperImpl.parseDocument(XMLMapperImpl.java:69)
    at org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java:123)
    ... 3 more

17:42:50,733 FATAL [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0056: Server boot has failed in an unrecoverable manner; exiting. See previous messages for …
Run Code Online (Sandbox Code Playgroud)

jboss wildfly undertow

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

使用 undertow-handlers.conf 重写路径无法按预期工作

背景

带有 Angular 7 UI 的 JBoss 7.1.5 EAP 后端。

我需要让 JBoss 了解 UI 的路由,但将它们全部重写到 UI 的索引页,以便通过 Angular 进行路由。

该项目的结构如下:

webapp/
  WEB-INF/
    undertow-handlers.conf
    web.xml
    ...etc
  login/
    background.jpg
  login.jsp
  index.jsp

  assets/*
  ...html
  ...js
  ...css
Run Code Online (Sandbox Code Playgroud)

index.jsp只是response.sendRedirect("index.html")s,其中 index.html 是 Angular CLI 生成的资产的一部分。JavaScript 和 HTML 由 提供webapp/,图像由webapp/assets/.

配置

standalone-full.xml

<subsystem xmlns="urn:jboss:domain:undertow:4.0">
    <buffer-cache name="default"/>
    <server name="default-server">
        <http-listener name="http" socket-binding="http" redirect-socket="https"/>
        <host name="default-host" alias="localhost,workstation">
            <location name="/" handler="welcome-content"/>
            <filter-ref name="request-dumper"/>
        </host>
    </server>
    <servlet-container name="default">
        <jsp-config x-powered-by="false"/>
        <websockets/>
    </servlet-container>
    <handlers> …
Run Code Online (Sandbox Code Playgroud)

jboss7.x undertow angular-router

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

在 Wildfly 10 中配置 HTTP 标头

有没有办法配置 Wildfly(10 个或更多)发送到客户端的 Http 标头仅配置以下内容:

HTTPS 严格传输安全 (HSTS) X-XSS-Protection X-Frame-Options Strict-Transport-Security Content-Security-Policy X-Content-Type-Options

我有一个配置文件(standalone.xml),其中包含所有配置。我需要在这里添加标题的配置。

security http-headers servlet-filters undertow wildfly-10

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

SpringBoot Undertow:如何调度到工作线程

我现在看看一个springboot下载,并不是很清楚(对我来说)如何将传入的http请求分派给工作线程以阻止操作处理.

看看UndertowEmbeddedServletContainer.class类,看起来没有办法让这种行为,因为唯一的HttpHandler是一个ServletHandler,允许@Controller配置

private Undertow createUndertowServer() {
    try {
        HttpHandler servletHandler = this.manager.start();
        this.builder.setHandler(getContextHandler(servletHandler));
        return this.builder.build();
    }
    catch (ServletException ex) {
        throw new EmbeddedServletContainerException(
                "Unable to start embdedded Undertow", ex);
    }
}

private HttpHandler getContextHandler(HttpHandler servletHandler) {
    if (StringUtils.isEmpty(this.contextPath)) {
        return servletHandler;
    }
    return Handlers.path().addPrefixPath(this.contextPath, servletHandler);

}
Run Code Online (Sandbox Code Playgroud)

默认情况下,在进程中,所有请求都由IO-Thread处理,用于非阻塞操作.这是否意味着每个@Controller执行都将由非阻塞线程处理?或者是否有从IO-THREAD或WORKER-THREAD中选择的解决方案?

我尝试编写一个解决方法,但这段代码非常流畅,也许有人有更好的解决方案:

BlockingHandler.class

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface BlockingHandler {

    String contextPath() default "/";

}
Run Code Online (Sandbox Code Playgroud)

UndertowInitializer.class

public class UndertowInitializer implements ApplicationContextInitializer<ConfigurableApplicationContext> {

    @Override
    public void initialize(ConfigurableApplicationContext configurableApplicationContext) {
        configurableApplicationContext.addBeanFactoryPostProcessor(new UndertowHandlerPostProcessor());
    }

} …
Run Code Online (Sandbox Code Playgroud)

spring-mvc worker spring-boot undertow

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

为何在undertow服务器中将端口设置为80失败?(java)

当我在Java程序中“ mvn exec:java”时,将端口设置为80时遇到问题,但是8080可以成功。

 Undertow server = Undertow.builder()
                    .addHttpListener(80, "localhost")
                    .setHandler(path)
                    .build();
            server.start();
Run Code Online (Sandbox Code Playgroud)

当我将其设置为80时,出现了类似的异常

java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: java.net.SocketException: Permission denied
        at io.undertow.Undertow.start(Undertow.java:141)
        at cc.cmu.edu.Q1.Q1Controller.main(Q1Controller.java:46)
        ... 6 more
Caused by: java.net.SocketException: Permission denied
        at sun.nio.ch.Net.bind0(Native Method)
        at sun.nio.ch.Net.bind(Net.java:433)
        at sun.nio.ch.Net.bind(Net.java:425)
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:67)
        at org.xnio.nio.NioXnioWorker.createTcpConnectionServer(NioXnioWorker.java:175)
        at org.xnio.XnioWorker.createStreamConnectionServer(XnioWorker.java:242)
        at io.undertow.Undertow.start(Undertow.java:120)
        ... 7 more
Run Code Online (Sandbox Code Playgroud)

java port maven undertow

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

如何在8080端口上启动keycloak 2.0?

Keycloak的默认端口曾经是8080.现在当我开始使用keycloak时

./bin/standalone.sh

然后它开始在9990端口.//所以我想现在keycloak的默认端口是9990.

但有趣的是,每当我给出如下明确的keycloak端口时:

 ./bin/standalone.sh  -Djboss.socket.binding.port-offset=8080
Run Code Online (Sandbox Code Playgroud)

在此密钥泄露开始于端口17101之后.太奇怪了.

我正在努力在8080端口上启动keycloak .我怎样才能做到这一点?

还有一件事 :

令人惊讶的是,在8080端口上运行了一个名为underow的东西.当我尝试启动keycloak时,我可以在stacktrace中跟踪它:

YUT0006: Undertow HTTP listener default listening on 127.0.0.1:8080
Run Code Online (Sandbox Code Playgroud)

jboss wildfly undertow keycloak

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