小编Dan*_*ele的帖子

XSLT 自定义函数返回节点集或 XML 片段(非简单数据类型)

我正在尝试开发一个可以返回节点集或 XML 片段的 XSLT 自定义函数,让我们说一下:

输入文件:

<root>
<!--
 author: blablabla
 usage: more blablabla
 labelC: [in=2] <b>formatted</b> blablabla
-->
<tag1 name="first">
    <tag2>content a</tag2>
    <tag2>content b</tag2>
    <tag3 attrib="val">content c</tag3>
</tag1>

<!--
 author: blebleble
 usage: more blebleble
 labelC: blebleble
-->
<tag1 name="second">
    <tag2>content x</tag2>
    <tag2>content y</tag2>
    <tag3 attrib="val">content z</tag3>
</tag1>
</root>
Run Code Online (Sandbox Code Playgroud)

这样一个 XSLT 模板,例如:

    <xsl:template match="//tag1/preceding::comment()[1]" xmlns:d="java:com.dummy.func">
    <section>
     <para>
      <xsl:value-of select="d:genDoc(.)"/>
     </para>
    </section>
    </xsl:template>
Run Code Online (Sandbox Code Playgroud)

会产生:

    <section>
     <para>
      <author>blablabla</author>
      <usage>more blablabla</usage>
      <labelC in="2"><b>formatted</b> blablabla</labelC>
     </para>
    </section>
Run Code Online (Sandbox Code Playgroud)

当第一次出现 tag1 和

    <section>
     <para>
      <author>blebleble</author>
      <usage>more blebleble</usage> …
Run Code Online (Sandbox Code Playgroud)

java xslt

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

调试码头https

我正在使用https设置一个独立的(非嵌入式)码头9.2.1。

我在本地机器上玩了带有自签名证书的文件,一切都很好。

现在,我正在设置一个uat服务器(类似于我将在生产环境中使用的服务器),但是我无法使https正常运行。这些是我的步骤:

1)我创建了一个密钥库,生成了证书请求并提交给我的CA,获得了签名证书,并将新证书和根证书都导入了密钥库

2)通过执行以下操作,我可以验证密钥库是否正常:

keytool -list -keystore jetty.jks
Run Code Online (Sandbox Code Playgroud)

我可以看到所有显示的证书及其别名

3)我将密钥库放置在/ etc文件夹中,并编辑了jetty-ssl.xml

<Set name="KeyStorePath"><Property name="jetty.base" default="." />/<Property name="jetty.keystore" default="etc/jetty.jks"/></Set>
<Set name="KeyStorePassword"><Property name="jetty.keystore.password" default="somepassword"/></Set>
<Set name="KeyManagerPassword"><Property name="jetty.keymanager.password" default="somepassword"/></Set>
<Set name="TrustStorePath"><Property name="jetty.base" default="." />/<Property name="jetty.truststore" default="etc/jetty.jks"/></Set>
<Set name="TrustStorePassword"><Property name="jetty.truststore.password" default="somepassword"/></Set>
Run Code Online (Sandbox Code Playgroud)

在启动时,我可以同时看到http和https连接器“ up”

10927 [main] INFO  org.eclipse.jetty.server.ServerConnector  - Started ServerConnector@231e04a9{HTTP/1.1}{0.0.0.0:8090}
11285 [main] INFO  org.eclipse.jetty.server.ServerConnector  - Started ServerConnector@4a1f826d{SSL-http/1.1}{0.0.0.0:8443}
11285 [main] INFO  org.eclipse.jetty.server.Server  - Started @12632ms
Run Code Online (Sandbox Code Playgroud)

但是https没有响应,实际上我从netstat看到端口8443上没有监听(同时显示端口8090正常)

我尝试使用jetty随附的“示例”密钥库并使其正常工作,这使我想到了密钥库的某些问题……但是,我在控制台或任何日志中都没有看到错误(即使以-DDEBUG =开头也是如此) true),我可以看到密钥库的证书。

我也尝试用-Djetty'force'选择哪个别名。https-cert-alias = capi但没有运气。

关于如何调试的任何想法?

谢谢!

https jetty jetty-9

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

grep不会从文件中提取模式

我有一个模式文件,例如t.txt,其中包含以下内容:

vali
Run Code Online (Sandbox Code Playgroud)

我想运行的grep对文件,说一个,包含以下内容:

validate
validate:

bw_validate:
 [echo] Validating project: CrossService_v1_59_5_1
 [echo] Found 62 errors and 28 warnings
 [echo] -----------------------------------------------------------------
 [echo] Validating project: CRM-UDB_59_4_2
 [echo] Found 25 errors and 28 warnings
 [echo] -----------------------------------------------------------------
 [echo] Validation Failed: At least one project contains errors.

notify:

BUILD FAILED
bw.xml:311: Validation Failed: At least one project contains errors.
Run Code Online (Sandbox Code Playgroud)

如果我执行:

grep -iE vali a
Run Code Online (Sandbox Code Playgroud)

我得到了预期的输出,即:

validate
validate:
bw_validate:
 [echo] Validating project: CrossService_v1_59_5_1
 [echo] Validating project: CRM-UDB_59_4_2
 [echo] Validation Failed: At least one …
Run Code Online (Sandbox Code Playgroud)

linux grep

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

标签 统计

grep ×1

https ×1

java ×1

jetty ×1

jetty-9 ×1

linux ×1

xslt ×1