如何启用码头登录?

2024-03-12

我正在尝试调试我的情况,其中简单的 ActiveWeb 应用程序未在 Jetty 下运行。它的行为就像不存在任何用于请求处理的类一样,并返回错误 404。

问题不在于 ActiveWeb。这是关于杰蒂的。如何发现 Jetty 有一些 Web 应用程序喜欢带注释的类并将在 HTTP 请求上执行它?

目前我已经下载了 Jetty 并且它可以工作。不幸的是,它不进行日志记录。中没有显示任何内容stdout or stderr并且没有文件出现在logs当 404 错误返回时,此时的子目录。

如何启用码头登录?

文档在这里http://www.eclipse.org/jetty/documentation/current/configuring-logging.html http://www.eclipse.org/jetty/documentation/current/configuring-logging.html和这里http://www.eclipse.org/jetty/documentation/current/configuring-jetty-request-logs.html http://www.eclipse.org/jetty/documentation/current/configuring-jetty-request-logs.html不明确且有争议。

例如,第一页说Jetty不使用任何Java登录框架,但也需要选择一个。第二页提供了一些配置示例,但没有说明该代码应该放在哪里。


Jetty 10 及更高版本的更新答案(2020 年 7 月)

从 Jetty 10.0.0 开始,不再有“Jetty Logging”外观。
码头项目已改为仅使用 SLF4J 2.0 https://github.com/eclipse/jetty.project/issues/4572.

Jetty 9 及更早版本的原始答案

该文档是正确的,因为术语“Java 日志框架”通常与现代日志框架相关联,如 java.util.logging、slf4j、logback、log4j、commons-logging、logkit 等。

这是正确的,Jetty 不使用其中任何一个。

Jetty 日志记录早于ALL标准化日志框架方面的努力。 (Jetty 及其日志记录层创建于 1995 年)

这就是 Jetty 日志记录的作用(并且已记录 https://www.eclipse.org/jetty/documentation/jetty-9/index.html#configuring-logging有关设置和配置的信息,请参阅文档站点。

默认行为:

  • If slf4j http://slf4j.org/存在于您的类路径中,它将向 slf4j 发出日志记录事件以使用Slf4jLog https://www.eclipse.org/jetty/javadoc/jetty-9/org/eclipse/jetty/util/log/Slf4jLog.html处理程序。
  • 回退到标准错误日志 https://www.eclipse.org/jetty/javadoc/jetty-9/org/eclipse/jetty/util/log/StdErrLog.html,发送至 System.err。

配置:

  • Specify the logging implementation you want it to use. Choices are:
    • 标准错误日志 https://www.eclipse.org/jetty/javadoc/jetty-9/org/eclipse/jetty/util/log/StdErrLog.html
    • Slf4jLog https://www.eclipse.org/jetty/javadoc/jetty-9/org/eclipse/jetty/util/log/Slf4jLog.html
    • Java实用程序日志 https://www.eclipse.org/jetty/javadoc/jetty-9/org/eclipse/jetty/util/log/JavaUtilLog.html

这可以通过 3 种不同的方式来完成

  1. 使用系统属性来设置日志记录实现
# 3 different options
-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StdErrLog
-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.Slf4jLog
-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.JavaUtilLog
  1. 使用jetty-logging.properties从类路径中找到的自我发现/配置。

jetty 项目本身的示例 https://github.com/eclipse/jetty.project/blob/jetty-9.2.3.v20140905/jetty-websocket/websocket-common/src/test/resources/jetty-logging.properties:

# Configure for System.err output
org.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StdErrLog
# Configure StdErrLog to log all jetty namespace at default of WARN or above
org.eclipse.jetty.LEVEL=WARN
# Configure StdErrLog to log websocket specific namespace at DEBUG or above
org.eclipse.jetty.websocket.LEVEL=DEBUG
 
  1. 使用代码来设置Log.setLog(Logger) https://www.eclipse.org/jetty/javadoc/jetty-9/org/eclipse/jetty/util/log/Log.html#setLog(org.eclipse.jetty.util.log.Logger)

这对于那些使用嵌入式码头 /questions/tagged/embedded-jetty

import org.eclipse.jetty.util.log.Log;
import org.eclipse.jetty.util.log.StdErrLog;

Log.setLog(new StdErrLog());

建议和注意事项:

Jetty 服务器启动的输出将为您提供有关其正在使用的日志记录实现的提示。

正常/默认行为:

2014-09-11 10:48:38.726:INFO::main: Logging initialized @378ms
2014-09-11 10:48:39.067:INFO:oejdp.ScanningAppProvider:main: Deployment monitor [file:/Users/joakim/Code/Jetty/distros/jetty-distribution-9.2.1.v20140609/demo-base/webapps/] at interval 1

请注意,它的输出中要么没有命名空间声明,要么有大量缩写的命名空间。这告诉我,StdErrLog正在使用中。

如果正在使用 slf4j:

10:50:18.871 [main] INFO  org.eclipse.jetty.util.log - Logging initialized @352ms
10:50:19.102 [main] INFO  o.e.j.d.p.ScanningAppProvider - Deployment monitor [file:/Users/joakim/Code/Jetty/distros/jetty-distribution-9.2.1.v20140609/demo-base/webapps/] at interval 1

这是默认值控制台附加器 http://logback.qos.ch/manual/configuration.html输出为slf4j -> logback。这里的整体结构与StdErrLog产生,所以我现在可以知道码头正在通过Slf4jLog执行。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何启用码头登录? 的相关文章

  • 如何在 IDEA Intellij 上使用 Spring-boot 自动重新加载

    我写了一个基于Spring boot tomcat freemarker的项目 我运行成功 但是每当我修改一些模板和java类时 我必须重新启动服务器或使用Intellij上的 重新加载更改的类 菜单才能使更改生效 浪费很多时间 然后我尝试
  • 从文本文件中读取阿拉伯字符

    我完成了一个项目 在该项目中我读取了用记事本编写的文本文件 我的文本文件中的字符是阿拉伯语 文件编码类型是UTF 8 当在 Netbeans 7 0 1 中启动我的项目时 一切似乎都正常 但是当我将项目构建为 jar 文件时 字符以这种方式
  • 对象数组的数组(二维数组)JNI

    我正在努力创建自定义对象类型 ShareStruct 的二维数组 jobjectArray ret jobjectArray ins jobjectArray outs jclass myClass env gt FindClass env
  • 这个等待通知线程语义的真正目的是什么?

    我刚刚遇到一些代码 它使用等待通知构造通过其其他成员方法与类中定义的线程进行通信 有趣的是 获取锁后 同步范围内的所有线程都会在同一锁上进行定时等待 请参见下面的代码片段 随后 在非同步作用域中 线程执行其关键函数 即 做一些有用的事情1
  • 确定序列化对象的类型

    我需要通过套接字发送消息 从用户到引擎的请求 以及从引擎到用户的响应 所以流程本质上是 serialized request Server lt network gt Client serialized response request r
  • java setFullScreenWindow 在 Mac 中隐藏登录对话框

    我使用的是全屏窗口 类似于屏幕保护程序 使用这里的方法 GraphicsEnvironment getLocalGraphicsEnvironment getDefaultScreenDevice setFullScreenWindow t
  • 纱线上的火花,连接到资源管理器 /0.0.0.0:8032

    我正在我的开发机器 Mac 上编写 Spark 程序 hadoop的版本是2 6 spark的版本是1 6 2 hadoop集群有3个节点 当然都在linux机器上 我在idea IDE中以spark独立模式运行spark程序 它运行成功
  • 在 Java 中创建 XML 文件的最佳方法是什么?

    我们目前使用 dom4j 来创建 XML 文件 不过 我猜现在有更好的东西了 如果我们使用的是 Java 1 6 或更高版本 那么在编写 XML 文件时最好使用什么类 运行速度最快 使用简单 我不需要构建一个 DOM 然后编写整个 DOM
  • 在 java 中运行外部应用程序但不要等待它完成

    我正在用java编写一个应用程序 允许我运行其他应用程序 为此 我使用了 Process 类对象 但当我这样做时 应用程序会等待进程结束 然后再退出 有没有办法在 Java 中运行外部应用程序 但不等待它完成 public static v
  • Java 中 JButton 的击键/热键

    最初我使用 JMenu 并建立热键以使用加速器工作 它运行得很好 现在我想在 JButton 中实现相同的行为 但我陷入困境 这是我编写的代码 请分享您的想法 以便我可以走上正确的道路 import javax swing import j
  • 使用单独的线程在java中读取和写入文件

    我创建了两个线程并修改了 run 函数 以便一个线程读取一行 另一个线程将同一行写入新文件 这种情况会发生直到整个文件被复制为止 我遇到的问题是 即使我使用变量来控制线程一一执行 但线程的执行仍然不均匀 即一个线程执行多次 然后控制权转移
  • 如何以编程方式创建 CardView

    我正在开发一个 Android 应用程序Java Android Studio 我想在活动中创建CardView以编程方式 我想将以下属性设置为CardView layout width wrap content layout row 0
  • 当底层连接是有状态时如何使用 Apache HttpClient?

    我在谷歌上搜索了很多关于如何使用 HttpClient 进行多线程处理的信息 他们中的大多数人建议使用 ThreadSafeClientConnManager 但我的应用程序必须登录某个主机 登录表单页面 以便 HttpClient 获得底
  • 删除 JFX 中选项卡后面的灰色背景

    So is there any way to remove the gray area behind the tab s 我尝试过用 CSS 来做到这一点 但没有找到方法 要设置 tabpane 标题的背景颜色 请在 CSS 文件中写入 t
  • Android:ANT 构建失败,并显示 google-play-services-lib:“解析为没有项目的 project.properties 文件的路径”

    我正在尝试使用 ANT 构建我的应用程序 但在包含 google play services lib 库项目后 我惨遭失败 Step 1 我在 project properties 文件中设置了对库项目的引用 android library
  • Android UnityPlayerActivity 操作栏

    我正在构建一个 Android 应用程序 其中包含 Unity 3d 交互体验 我已将 Unity 项目导入 Android Studio 但启动时该 Activity 是全屏的 并且不显示 Android 操作栏 我怎样才能做到这一点 整
  • java.lang.IllegalStateException - 提交响应后无法创建会话

    我在我的项目中使用 JSF PrimeFaces 我为此准备了一个Maven项目 当我编译项目并加载主页后 我收到以下异常 java lang IllegalStateException Cannot create a session af
  • 在实现使用原始类型的接口时如何避免警告?

    我正在实施流程工厂 http help eclipse org ganymede index jsp topic org eclipse platform doc isv reference api org eclipse debug co
  • 如何建立与 FileZilla Server 1.2.0 的 FTPS 数据连接

    使用 Apache commons net 的 Java FTPSClient 进行会话恢复是一个已知问题 会话恢复是 FTPS 服务器数据连接所需的一项安全功能 Apache FTPSClient 不支持会话恢复 并且 JDK API 使
  • Java中单例的其他方式[重复]

    这个问题在这里已经有答案了 只是我在考虑编写单例类的其他方法 那么这个类是否被认为是单例类呢 public class MyClass static Myclass myclass static myclass new MyClass pr

随机推荐

  • 禁用自动更正类型不适用于 UITextfield

    我创造了RegisterViewController包含电子邮件 密码和确认密码字段 在电子邮件字段中 它始终在 QuickType 键盘栏上显示建议的电子邮件 但其他字段不显示任何内容 它如何知道哪个字段是电子邮件或不是 我发誓我没有在文
  • Swift 中的通用完成处理程序

    我有一个方法 它有一个名为performRequest 这需要一个JSONRequest范围 JSONRequest看起来像这样 public typealias JSONCompletionHandler Entity NSError g
  • Play Framework - 如何继承超类?

    我有一个扩展 Model 的 User 类 以及两个我想扩展 User 类的类 用户 java Entity Table name users public class User extends Model implements RoleH
  • 如何在 scikit-learn 中正确执行交叉验证?

    我正在尝试对 k nn 分类器进行交叉验证 但我对以下两种方法中哪一种正确执行交叉验证感到困惑 training scores defaultdict list validation f1 scores defaultdict list v
  • 使用带有附加类型参数的 Curiously Recurring Template Pattern (CRTP)

    我尝试使用 Curiously Recurring Template Pattern CRTP 并提供其他类型参数 template
  • 背景图像仅拉伸 y 轴,保留重复 x

    我有一个图像设置为 div 的背景图像 DIV 大小正在变化 其内部是渐变图像 CSS scroller shadow background image url img ui shadow png background repeat rep
  • 列出所有不带星号的本地 git 分支 [重复]

    这个问题在这里已经有答案了 如果我跑git branch 我得到类似的东西 master dev foo if I do git branch r 它将显示远程上的所有分支 不带星号 其中星号显示我当前签出的分支 如何列出所有本地分支机构而
  • 在 appsettings.json 日志记录上下文中,MinimumLevel 和 Override 意味着什么?

    我正在查看 appsettings jsonSerilog 示例项目 https github com serilog serilog docker blob master web sample src appsettings json 其
  • python - 是否可以创建“def”列表? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想知道是否可以创建一个 def 列表 连接 20 个按钮的列表 并为每个按钮设置不同的回调 Thanks def在Python中只是
  • 自定义类扩展 FloatingActionButton 时出错

    我创建了一个自定义类并扩展了FloatingActionButton public class customFAB extends FloatingActionButton public customFAB Context context
  • 在 Pytorch 中执行优化时如何对变量应用界限?

    我正在尝试使用 Pytorch 进行非凸优化 试图最大化我的目标 因此在 SGD 中最小化 我想限制因变量 x gt 0 并且 x 值的总和小于 1000 我认为我已经以斜坡惩罚的形式正确实施了惩罚 但我正在努力解决 x 变量的边界问题 在
  • 表单提交 keyCode == "enter" (13)

    I need to submit the content of a form when I press the Enter key but only if the form has no error message I built up t
  • 如何在react中进行fetch?

    下午好 我从服务器获取json 我处理它 但是对渲染的调用发生了2次 Google 在构造函数中创建一个空对象 如果该对象没有属性 则返回 undefined 但我也有数组 应用程序从中崩溃 我附上代码 如何将数据取出状态 是否可以在渲染中
  • NSJSON序列化

    我在使用某些公共 json 服务时遇到问题 以这种方式格式化的服务 jsonFlickrFeed title Uploads from everyone link http www flickr com photos description
  • Android 本地化 es-r419

    我正在本地化我的应用程序 支持的语言 区域之一是 Espanol 419 Android 不支持命名约定values es r419 但它接受values en rGB 我应该使用什么名称才能使其正常工作 我不知道r419从何而来 我唯一能
  • 让左栏一直向下延伸

    我已经为此绞尽脑汁近三天了 我读过很多关于 3col 拉伸 设置清晰和使用绝对位置和相对位置的文章 很多是矛盾的 我认为 我想要一个非常简单的布局 我想要左侧的导航 div 左侧有两个 div 和一个页脚 如果我使用表格 它会是这样的 ta
  • 如何在不打开 Flutter 上默认电子邮件应用程序的情况下发送邮件?

    是否可以在不打开默认电子邮件应用程序的情况下发送电子邮件 直接地 我用了两个插件 但两者都是打开默认应用程序 Using flutter email sender plugin final Email email Email body Ve
  • 为什么我不能将 PHP 类实例存储为 SESSION 变量

    我有一个 PHP 脚本 可以通过 Dojo Ajax xhrGet 调用以两种方式进行调用 第一次使用 init 参数调用它 这会导致脚本创建 StateList 类的实例并读入状态名称文件 session start include St
  • 使用 Sharp 库的 Firebase 部署功能在 Google Cloud Build 中失败

    从 Bitbucket Pipelines 迁移到 Google Cloud Build 后 Firebase 部署失败 该设置在 Bitbucket Pipelines 和本地都成功部署 除了下面的错误之外 没有给出进一步的解释 我对代码
  • 如何启用码头登录?

    我正在尝试调试我的情况 其中简单的 ActiveWeb 应用程序未在 Jetty 下运行 它的行为就像不存在任何用于请求处理的类一样 并返回错误 404 问题不在于 ActiveWeb 这是关于杰蒂的 如何发现 Jetty 有一些 Web