小编WIL*_*MAN的帖子

使用springboot和logback获取基本日志记录的问题

我有一个简单的春季启动应用程序在groovy.这是我到目前为止设置的gradle依赖项

dependencies {
    compile 'org.codehaus.groovy:groovy-all:2.3.11'
    compile 'org.easyrules:easyrules-core:2.2.1-SNAPSHOT'
    compile 'org.easyrules:easyrules-spring:2.2.1-SNAPSHOT'
    compile 'org.easyrules:easyrules-jmx:2.2.1-SNAPSHOT'
    testCompile group: 'junit', name: 'junit', version: '4.11'
    compile 'org.springframework.boot:spring-boot-starter'
    compile 'org.springframework.boot:spring-boot-starter-actuator'
    compile 'org.springframework.boot:spring-boot-starter-logging'
    compile 'ch.qos.logback:logback-classic:1.1.5'
}
Run Code Online (Sandbox Code Playgroud)

这带来了版本1.7.13的slf4j-api,log4j-over-slf4j,jul-to-slf4j和jcl-over-slf4f

然后在我的帮助班我有这个

@Component
@PropertySource ("classpath:application.properties")
class RulesHelper {

    private static final Logger log = LoggerFactory.getLogger(RulesHelper.class)
Run Code Online (Sandbox Code Playgroud)

接着是这样的bean def

@Bean
def rulesEngine () {
    assert jmxEnabled != null
    if ( !jmxEnabled ) {
        //return std rules engine
        println "returning std rules engine of type ${stdRulesEngine.getClass().name}"
        ruleEngine = stdRulesEngine
        return stdRulesEngine
    } else {
        println "returning …
Run Code Online (Sandbox Code Playgroud)

groovy logging spring

7
推荐指数
2
解决办法
4881
查看次数

如何使用 docker 命令将主题添加到正在运行的 kafka 容器?

我有一个 kafka 容器开始使用以下内容

docker run --detach --name kafka -p 2181:2181 -p 9092:9092 --env ADVERTISED_HOST=192.168.1.89 --env ADVERVTISED_PORT=9092 --env AUTO.CREATE.TOPICS.ENABLE spotify/kafka
Run Code Online (Sandbox Code Playgroud)

我可以使用 docker log kafka 来查看它的启动情况。

然后我创建了一个简单的常规脚本客户端生成器来编写一些条目,但是这一直出错

> Sending metadata request {topics=[wills topic]} to node 0
> Error while fetching metadata with correlation id 1 : {wills topic=INVALID_TOPIC_EXCEPTION}
....
Run Code Online (Sandbox Code Playgroud)

我在客户端代码中设置了以下属性

    Properties props = new Properties()
    props.put("bootstrap.servers", "192.168.1.89:9092" )   //Assign localhost id and external port (9092 int)
    props.put("acks", "all")                            //Set acknowledgements for producer requests.
    props.put("retries", 0)                             //If the request fails, the producer can …
Run Code Online (Sandbox Code Playgroud)

groovy apache-kafka docker

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

如何以与“cmd /c <command>”.execute() 相同的方式从 groovy 运行 PowerShell 命令?

在 Groovy 中,我可以直接运行 Windows cmd shell 并像这样读取结果:

def proc = "cmd /c dir".execute()
proc.wait()
println "stdout: ${proc.in.text}"
Run Code Online (Sandbox Code Playgroud)

但是,如果我使用 PowerShell 尝试此操作,它会阻止并且不会返回:

def proc = "powershell dir".execute()
Run Code Online (Sandbox Code Playgroud)

我试过了

def proc = "powershell -NonInteractive dir".execute()
Run Code Online (Sandbox Code Playgroud)

等等 - 但它们都阻塞了,我必须杀死 Groovy 脚本。

/c与 PowerShell 一起使用以获取返回到脚本的结果的 cmd 开关的等效项是什么。

windows powershell groovy

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

有没有人知道cosmossdb模拟器是否支持本地dev的图形api - 或者只是documentDb api

本地运行的模拟器是否仅支持documentDB格式?

(资源管理器似乎只显示集合).

还没准备好直接进入azure,并希望首先在本地使用图形api和Java.

azure azure-ad-graph-api azure-cosmosdb

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

在 Windows 10 64 位上对控制台显示进行 Ansi 编码时,logback 出现异常

找不到这个问题的答案,任何人都可以修复。

我有一个正在构建和使用 logback (logabck 1.2.3,jansi 1.16)和 groovy 的库 jar,我正在尝试对日志显示进行颜色编码 - 正如 Spring Boot 设法做到的 - 但我不想要 Spring作为我正在构建的这个库的依赖项启动。

我已将 jansi (1.16,如 logabck 文档中所述)库作为 gradle 构建的依赖项包含在内。

我的 logback.groovy 的相关部分看起来像这样

appender('STDOUT', ConsoleAppender) {
    withJansi = true
    encoder(PatternLayoutEncoder) {
        charset = Charset.forName('UTF-8')
        pattern = consolePatternFormat
    }
} 
Run Code Online (Sandbox Code Playgroud)

当我运行测试时,我收到这样的错误(启用了 jansi)

16:17:42,344 |-WARN in com.softwood.logging.logback.AnsiConsoleAppender[STDOUT] - Failed to create WindowsAnsiOutputStream. Falling back on the default stream. ch.qos.logback.core.util.DynamicClassLoadingException: Failed to instantiate type org.fusesource.jansi.WindowsAnsiOutputStream
    at ch.qos.logback.core.util.DynamicClassLoadingException: Failed to instantiate type org.fusesource.jansi.WindowsAnsiOutputStream
    at  at ch.qos.logback.core.util.OptionHelper.instantiateByClassNameAndParameter(OptionHelper.java:69)
    at  at ch.qos.logback.core.util.OptionHelper.instantiateByClassNameAndParameter(OptionHelper.java:40)
    at …
Run Code Online (Sandbox Code Playgroud)

windows groovy logback ansi-colors logback-groovy

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

获取 - jsf2的错误"...工厂javax.faces.context.FacesContextFactory的备份".在grails插件项目中

在开发模式下运行grails 2.01和tomcat(正常的STS开发人员下载)

我试图运行jsf插件,但它不会在grails 2中工作

所以对于我来说,我试图构建我自己的本地插件,将其构建为本机v2插件,并在途中了解插件项目.已经解构(慢慢)grails jsf2插件并一点一点地重建它并随着我去学习

我的问题如下 - 我在本地构建了我的插件 - 称为'wwjsf'

我已经完成了doWithWebDescriptor闭包 - 但是当我运行插件时我得到一个错误 - 并且服务器不会呈现.xhtml文件 - 任何此类请求都会出现同样的错误.

我已将最新的mojarra jsf 2.1.7 api/impl文件包含到我的项目构建路径中 - 这是在grails 2.01中嵌入的默认tomcat的错误

Message: Could not find backup for factory javax.faces.context.FacesContextFactory.
Line | Method
->> 1008 | getFactory in javax.faces.FactoryFinder$FactoryManager
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|    343 …
Run Code Online (Sandbox Code Playgroud)

grails plugins jsf-2

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

我如何打印一个类型为groovy.json.internal.LazyMap的JsonSlurper.parse(url)结果

我有一段代码调用谷歌地理编码API并返回Json结果,就像这样

    def response = new JsonSlurper().parse (url.toURL())
Run Code Online (Sandbox Code Playgroud)

但是返回类型实际上是groovy.json.internal.LazyMap类型.

当我尝试用以下内容打印时

    def res = JsonOutput.prettyPrint (response.toString())
Run Code Online (Sandbox Code Playgroud)

我得到一个像这样 Caught: groovy.json.JsonException: Lexing failed on line: 1, column: 2, while reading 'r', no possible valid JSON value or punctuation could be recognized. groovy.json.JsonException: Lexing failed on line: 1, column: 2, while reading 'r', no possible valid JSON value or punctuation could be recognized. at org.softwood.Geolocation.Geocoder.completeLatLong(Geocoder.groovy:29) at org.softwood.Geolocation.Geocoder$completeLatLong.call(Unknown Source) at org.softwood.Geolocation.TestGeoScript.run(TestGeoScript.groovy:13 的错误 ,懒惰的地图上的实际toString()给出了 - 它不会在字符串结果周围放置引号 - 可能是为什么它不能正确解析

{results=[{address_components=[{long_name=South Close, short_name=South Cl, types=[route]}, {long_name=Ipswich, short_name=Ipswich, types=[locality, political]}, …

groovy json

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

grails v3.2.5 中的 dbconsole 在哪里

在 grails 3.2.5 上进行一些开发模式工作,但找不到 /dbconsole 小程序。

我运行我的应用程序并转到根 url 并输入 /dbconsole,然后得到 404。我尝试编辑 application.groovy 中的一个条目以确保它在 dev 中启用,并显式设置 urlRoot,但没有效果。

dbconsole 是否已从最新的 grails 版本中删除,或者它是否存在但被隐藏?

我在应用程序 groovy 和 application.yml 中尝试了这种变体,但没有效果 - 在浏览器上总是得到 404

environments {
    production {
        //grails.serverURL = "http://www.changeme.com"
        grails.dbconsole.enabled = true
        grails.dbconsole.urlRoot = '/admin/dbconsole'
    }
    development {
        grails.serverURL = "http://localhost:8080/${appName}"
        grails.dbconsole.enabled = true
        grails.dbconsole.urlRoot = "${appName}/dbc"
    }
    test {
        grails.serverURL = "http://localhost:8080/${appName}"
    }
}
Run Code Online (Sandbox Code Playgroud)

文档暗示它应该仍然有效,但我无法让它出现

grails

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

问题将Java客户端连接到Windows 10上的Azure Cosmoss db仿真器,找不到证书

问题:我的演示代码客户端无法连接到Windows 10上的Azure Cosmos模拟器。不确定为什么不这样做。

步骤
1.在Windows上安装cosmossdb仿真器-看起来不错
2.按照文档,启动Windows cert manage.msc。选择了具有友好名称“ DocumentDBEmulatorCertificate”的私有证书作为base64编码的x.509.cer文件到本地磁盘
3。以管理员身份在Windows中启动了cmd控制台,并以cd到本地JAVA_HOME / lib / security目录(我正在使用Java 8.0.131 )
4.与此一起运行keytool

keytool -import -trustcacerts -keystore cacerts -storepass changeit -noprompt -alias azureCosmossDBEmulator -file“ D:\ exported certificate \ cosmossDB-emulator-cert.cer”

  1. 列出了修订的密钥库中的dump.txt文件。我可以在转储中看到我的条目

azurecosmossdbemulator,2017年8月30日,trustCertEntry,证书指纹(SHA1):5B:F4:14:BE:9F:2B:7F:6A:2B:C0:87:A4:3E:4D:9A:52:45: FA:2F:EA

这与x.509证书中的指纹值匹配。

  1. 在我的构建中重启intellij,检查了Java 8.0.1.3.1是项目中唯一的jdk。

  2. 在调试中启动常规测试脚本并逐步执行代码。我可以创建DocumentClient。

  3. 这只是测试连接代码的草稿脚本,看起来像这样

最终字符串键=“ C2y6yDjf5 / R + ob0N8A7Cgv30VRDJIWEHLM + 4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw / Jw ==”

DocumentClient client = new DocumentClient("https://localhost:8081", key
                , new ConnectionPolicy(), ConsistencyLevel.Session)

String dbname = "familyDB"
        String dblink = "/dbs/$dbname"

//create db if not exists
try {
    client.readDatabase(dblink,null) …
Run Code Online (Sandbox Code Playgroud)

java client keystore azure

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