Tag: vert.x

Vertx Webroot在Fat Jar中

我正在为Vertx-Web应用程序构建一个胖jar。 我想提供一些静态文件。 我用jarroot文件夹打包了jar文件。 请参阅下面的jar截面截图: 通过执行以下操作,我能够加载webroot / static / test.html文件: routingContext.response().sendFile(“webroot/static/test.html”); 但是,我无法让静态处理程序工作。 以下是我的完整代码: package com.jdescript; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import io.vertx.core.AbstractVerticle; import io.vertx.core.http.HttpServer; import io.vertx.ext.web.Router; import io.vertx.ext.web.handler.StaticHandler; public class WebVerticle extends AbstractVerticle { private HttpServer httpServer; @Override public void start() throws IOException { httpServer = vertx.createHttpServer(); Router router = Router.router(vertx); router.route(“/static/*”).handler(StaticHandler.create()); router.route(“/test”).handler(routingContext […]

如何在Vertx服务器中合并SOAP Web服务

是否可以在Vertx服务器中集成SOAP Web服务?

JOOQ初始化DAO最佳方法

我想知道初始化JOOQ生成的DAO的最佳实践。 现在,我正在使用以下方法来启动JOOQ生成的DAO。 在以下情况中,StudentDao是JOOQ生成的。 public class ExtendedStudentDAO extends StudentDao { public ExtendedStudentDAO () { super(); } public ExtendedStudentDAO (Connection connection) { Configuration configuration = DSL.using(connection, JDBCUtils.dialect(connection)).configuration(); this.setConfiguration(configuration); } //adding extra methods to DAO using DSL public String getStudentName(Long ID) throws SQLException { try (Connection connection = ServiceConnectionManager.getConnection()) { DSLContext dslContext = ServiceConnectionManager .getDSLContext(connection); Record1 record = […]

接受vertx api中相同键的参数列表

如何在路由器GET方法中接受同一个键中的参数列表。 例如,我的查询参数名称为’personId’。 但在获取请求中,可能有多个(列表)personId即将到来。 如何在vertx中处理这个问题。 我在HttpServerRequest Class中找不到任何这样的方法。 我还有另一种选择来接受单个参数,但使用逗号分隔的ID。 但这不是错的吗? 没有其他办法吗? 我认为URI应该像localhost:8081/myApi?personId=1&personId=2&personId=3

vertx LoggerHandler不添加logback

我正在尝试使用LoggerHandler记录所有传入的请求。 我正在使用logback.xml来指定appender。 我正在设置日志记录的系统属性。 System.setProperty(“org.vertx.logger-delegate-factory-class-name”, “org.vertx.java.core.logging.impl.SLF4JLogDelegateFactory”); 它仍然在控制台中记录所有内容而不是文件。

如何使用VERTX处理程序获取POST表单数据?

我能够使用缓冲区处理程序获取表单数据,但它是一个void函数,我无法返回表单数据值。 总共有大约4-7个表单,我不想一遍又一遍地编写相同的处理程序,因为默认函数是void。 HTML: Login Page activate user log in Login UserName: Password: Java的: import org.jboss.netty.handler.codec.http.QueryStringDecoder; import org.vertx.java.core.Handler; import org.vertx.java.core.Vertx; import org.vertx.java.core.buffer.Buffer; import org.vertx.java.core.http.HttpServer; import org.vertx.java.core.http.HttpServerRequest; import org.vertx.java.core.http.RouteMatcher; import org.vertx.java.deploy.Verticle; import java.util.Collection; import java.util.List; import java.util.Map; import java.util.Set; /** * Created by IntelliJ IDEA. * User: yao * Date: 1/17/13 * Time: 2:22 PM */ public […]

如何从IntelliJ IDEA启动Vert.x服务器?

如何从IntelliJ IDEA内部启动简单的Vert.x服务器? 我的build.gradle如下: apply plugin: ‘java’ version = ‘3.0.0’ repositories { mavenCentral() } dependencies { compile ‘io.vertx:vertx-core:3.0.0’ } 我的Vertx服务器, MyVertex.java如下: package com.example; import io.vertx.core.AbstractVerticle; import io.vertx.core.Future; public class MyVerticle extends AbstractVerticle { @Override public void start(Future fut) { vertx.createHttpServer() .requestHandler(r -> r.response().end(“Hello”)) .listen(8081); } } 我的IntelliJ运行配置如下, io.vertx.core.Starter作为主类: 但是,当我使用我的运行配置运行它时,我收到以下错误消息: Error: Could not find or load main […]

如何配置Vert.x事件总线以跨Docker容器集群工作?

在我目前的设置中,我使用的是Hazelcast集群管理器的默认多播选项。 当我链接我的容器化Vertx模块的实例(通过Docker网络链接)时,我可以看到他们成功创建了Hazelcast集群。 但是,当我尝试从一个模块在事件总线上发布事件时,另一个模块不会对它做出反应。 我不确定Hazelcast群集中的网络设置如何与事件总线的网络设置相关。 目前,我为每个Vert.x模块配置了以下编程配置,每个模块都部署在一个docker容器中。 ClusterManager clusterManager = new HazelcastClusterManager(); VertxOptions vertxOptions = new VertxOptions() .setClustered(true) .setClusterManager(clusterManager); vertxOptions.setEventBusOptions(new EventBusOptions() .setClustered(true) .setClusterPublicHost(“application”)); Vert.x Core手册指出我可能必须为事件总线配置clusterPublicHost和clusterPublicPort ,但我不确定它们与一般网络拓扑的关系。

Intellij IDEA调试器无法处理Gradle Vert.X项目

我正在使用Gradle构建工具使用Vert.X框架开发项目。 我遇到的问题是IntelliJ中的断点根本无法以我尝试过的方式工作。 这是我在Gradle中使用的Vert.X的运行配置: run { args = [ ‘run’, mainVerticleName, “-conf”, confPath, “–redeploy=$project.ext.watchForChange”, “–launcher-class=$mainClassName”, “–on-redeploy=$project.ext.doOnChange” ] } 因此,部署是使用Gradle完成的,运行没有任何问题, IntelliJ调试器已连接,但断点不起作用 。 我试图让它运作的方式: 1)Gradle运行配置。 以下是Intellij IDEA的运行配置: 尝试使用远程调试工具,启动具有以下VM选项的应用程序: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000 但这没效果。 2)应用程序配置: 在这种情况下,我无法启动项目,因为我在启动时收到以下消息: Error: Could not find or load main class io.vertx.core.Launcher Vert.X Core库在类路径和配置似乎是正确的,所以无法得到的是问题。 该项目的源代码是公开的,可以在GitHub上GitHub : vertx-gradle这个架构起动 Vert.X版本 – 3.4.0。 Gradle版本 – 3.4.1。 IntelliJ IDEA版本 – 2016.3.5。 操作系统 – […]