小编Mic*_*ght的帖子

使用x509证书签署xml文档

每次我尝试发送签名的XML时,Web服务验证程序都会拒绝它.

为了签署文档,我刚刚调整了Microsoft提供的示例代码:

http://msdn.microsoft.com/es-es/library/ms229745(v=vs.110).aspx

我的实施:

    public static XmlDocument FirmarXML(XmlDocument xmlDoc)
    {
        try
        {
            X509Certificate2 myCert = null;
            var store = new X509Store(StoreLocation.CurrentUser); //StoreLocation.LocalMachine fails too
            store.Open(OpenFlags.ReadOnly);
            var certificates = store.Certificates;
            foreach (var certificate in certificates)
            {
                if (certificate.Subject.Contains("xxx"))
                {
                    myCert = certificate;
                    break;
                }
            }

            if (myCert != null)
            {
                RSA rsaKey = ((RSA)myCert.PrivateKey);

                // Sign the XML document. 
                SignXml(xmlDoc, rsaKey);                    
            }

        }
        catch (Exception e)
        {
            MessageBox.Show(e.Message);
        }
        return xmlDoc;
    }


    // Sign an XML file. 
    // This document cannot …
Run Code Online (Sandbox Code Playgroud)

c# xml x509 xml-signature

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

Spring boot + Thymeleaf 自定义错误消息

我正在使用 Spring Boot 和 thymeleaf 作为 Web 应用程序。

\n\n

我想自定义验证错误消息而不是使用默认消息。我发现这样做的方法是创建一个名为 messages.properties 的文件,其中包含约束和消息。我还发现我可以根据我的目标类创建自定义消息,并且我还可以基于此使用国际化方法。

\n\n

为了覆盖默认消息,我创建了自己的 messages.properties 文件:

\n\n
Size.message=El tam\xc3\xb1o no es correcto\nNotNull.message=No puede ser nulo\nMin.message=No cumple con el minimo\n
Run Code Online (Sandbox Code Playgroud)\n\n

我在班级中设置了约束:

\n\n
public class Person {\n\n    @Size(min=2, max=30)\n    private String name;\n\n    @NotNull\n    @Min(value = 18L)\n    private Integer age;\n\n    public String getName() {\n        return name;\n    }\n\n    public void setName(String name) {\n        this.name = name;\n    }\n\n    public Integer getAge() {\n        return age;\n    }\n\n    public void setAge(Integer age) {\n        this.age = age;\n    }\n}\n …
Run Code Online (Sandbox Code Playgroud)

thymeleaf spring-boot

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

如何将参数传递给表组件?

我使用Jaspersoft Studio创建报告,我发现将参数传递给表时出现问题.

报告布局和结果

报告布局 结果

正如您在这些图片中看到的那样,当我尝试使用参数来设置表头时,我得到了null.

为了获取值,我在报告参数列表和表数据集参数列表中创建了相同的参数名称.显然,它根本不起作用.

我试着按照这些说明操作:jaspersoft-passing-parameter-to-tables

但我的数据源来自net.sf.jasperreports.engine.data.JRBeanCollectionDataSource参数,我找不到成功完成教程的方法.

相关代码:

<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="subreport" pageWidth="555" pageHeight="802" columnWidth="555" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0" uuid="19165c65-293a-42f1-9c92-0f4ceacaaa39">
  .....
  <subDataset name="ATableDataset" uuid="f7f9da25-c513-46bb-92c2-5a97ee76eb5e">
    <parameter name="tableHeadA" class="java.lang.String"/>
    <parameter name="column1AHead" class="java.lang.String"/>
    <parameter name="column2AHead" class="java.lang.String"/>
    <parameter name="column3AHead" class="java.lang.String"/>
    <queryString>
        <![CDATA[]]>
    </queryString>
    <field name="column1A" class="java.lang.String"/>
    <field name="column2A" class="java.lang.String"/>
    <field name="column3A" class="java.lang.String"/>
  </subDataset>
   .....
  <jr:table xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd">
    <datasetRun subDataset="ATableDataset" uuid="8ac10f33-c9e3-4678-8280-2830a76f72c6">
    <dataSourceExpression><![CDATA[$P{AtableDatasource}]]></dataSourceExpression>
   </datasetRun>
    ....
</jr:table>
......
</jasperReport>
Run Code Online (Sandbox Code Playgroud)

完整代码见gitHub,sample\src\main\resources\subreport.jrxml

jasper-reports

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

jasperreports_extension.properties由maven程序集插件覆盖

为了拥有一个可执行jar,我包含了maven依赖项.一切正常,但是jasperreports_extension.properties.Jasper已经有一个替换我的默认值.

我想知道如何将两个文件(默认文件和自定义文件)组合到jar文件中.实际上我手动组合了两个设置,现在我想找到替换程序集插件复制的文件的方法,我已经合并了.

这是我当前的maven程序集插件设置:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>${maven-assembly-plugin.version}</version>
            <configuration>
                <archive>
                    <manifest>
                        <mainClass>
                            com.test.sample.MainClass
                        </mainClass>
                    </manifest>
                </archive>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
            </configuration>
        </plugin>
    </plugins>
</build>
Run Code Online (Sandbox Code Playgroud)

这些是我在报告中添加一些字体的自定义设置:

net.sf.jasperreports.extension.registry.factory.fonts=net.sf.jasperreports.engine.fonts.SimpleFontExtensionsRegistryFactory 
net.sf.jasperreports.extension.simple.font.families.ireportfamily1453367638844=fonts/fontsfamily1453367638844.xml
Run Code Online (Sandbox Code Playgroud)

和依赖:

<dependency>
    <groupId>net.sf.jasperreports</groupId>
    <artifactId>jasperreports</artifactId>
    <version>6.2.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

编辑:

考虑依赖性:

  • jasperreports_extension.properties 在里面(根级) jasperreports-6.2.0.jar
  • jasperreports_extension.properties在里面(根级) jasperreports-fonts-6.0.0.jar(这只是一个测试依赖项)

在我用一个阴影替换了程序集插件之后,我报告的初始问题是固定的,但是我得到了这个新问题:

    Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.SecurityException: no manifiest section for signature file entry org/bouncycastle/mail/smime/SMIMEEnvelopedGenerator$EnvelopedGenerator.class
        at sun.security.util.SignatureFileVerifier.verifySection(Unknown Source)
        at sun.security.util.SignatureFileVerifier.processImpl(Unknown Source)
        at …
Run Code Online (Sandbox Code Playgroud)

java jasper-reports maven

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

标签 统计

jasper-reports ×2

c# ×1

java ×1

maven ×1

spring-boot ×1

thymeleaf ×1

x509 ×1

xml ×1

xml-signature ×1