以编程方式实现TestNg套件并通过maven surefire执行它

如何使用java而不是testng.xml实现TestNG测试套件。 我遵循以下程序,但我不能用maven suefire插件运行它。 请帮忙 TestNG testNG = new TestNG(); List classList =new ArrayList(); List testList = new ArrayList(); List suiteList= new ArrayList(); List suiteNameList = new ArrayList(); XmlTest xmlTest= new XmlTest(); XmlSuite suite = new XmlSuite(); XmlClass xmlClass = new XmlClass(); xmlClass.setClass(bpsTestNg.class); classList.add(xmlClass); xmlTest.setClasses(classList); testList.add(xmlTest); suite.setTests(testList); suiteList.add(suite); suite.setName(“sampleSuite1”); suiteNameList.add(“sampleSuite1”) ; suite.toXml(); IConfiguration iConfiguration = null; […]

当“允许不太安全的应用程序:关闭”时,如何将邮件发送到Gmail

我可以用java发送邮件到gmail,当“ Allow less secure apps: ON ”时(你可以在这里找到代码)。但是当“允许安全性较低的应用程序:关闭”时出现错误。 请给我适当的步骤来解决这个问题。 错误: 534-5.7.14 Please log in via your web browser and 534-5.7.14 then try again. 534-5.7.14 Learn more at 534 5.7.14 https://support.google.com/mail/answer/78754 ud10sm34016765pab.27 – gsmtp 我如何得到令牌: 第1步:我在google开发者控制台中创建了服务帐户。 第2步:接下来,通过使用此服务帐户,我获得了令牌。 下面,您可以找到代码。 第3步:如何使用此令牌发送邮件到Gmail? 请指导我。请知道我是新手。 指导我,如果我错了 String emailAddress = “XXXX@XXXX.XX.gserviceaccount.com”; JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance(); HttpTransport httpTransport; try { httpTransport = GoogleNetHttpTransport.newTrustedTransport(); GoogleCredential […]

Primefaces数据表选定的行无法使用viewcope工作

我正在使用JSF 2.0和Primefaces 3.4.2,我有一个使用延迟加载填充的数据表。 当我查看managedbean的范围时,datatable selectedRow给出了空指针exception。 如果我使用会话范围,那么我可以在managedbean中获得selectedRow。 我正在使用CDI Spring注释来指定范围。 我已经使用此方法来创建视图范围。 更新1 我注意到另一件事是在我分页到第二页然后回到第一页时使用视图范围,然后我可以获得selectedRow。 如果我选择没有分页的行,那么我会得到空指针exception。 JSF页面 ManagedBean @Named(“emp”) @Scope(“view”) public class EmployeesManagedBean implements Serializable { @PostConstruct public void init() { initTable(); } private void initTable() { lazyModel = new LazyRequestDataModel(requestList, requestService); } public LazyDataModel getLazyModel() { return lazyModel; } 我在onRowSelect方法的这一行得到了nullpointerexception Emp emp = (Emp) event.getObject()); System.out.println(emp.getEmpNo() ); 完整错误堆栈跟踪 […]

Java 1.8时间function

所以Java 1.8附带了一大堆新的(和旧的)类来管理时间计算: java.time.Instant , java.time.LocalTime , java.time.temporal.ChronoUnit ,以及更多…… 但为什么没有简单的方法来计算其中任何一个之间的时差? 我希望“time_later – time_earlier”是最常用的时间操纵,但这是无处可见的。 我无法从另一个中减去一个LocalTime并获得一个新的LocalTime; 我不能从另一个中减去一个瞬间来获得一个新的瞬发。 相反,我必须摆弄ChronoUnits.between,以及长毫秒和其他什么来实现这个非常有用的东西。 为什么是这样? 必须要发生一些我没有得到的事情? 或者我只是愚蠢……?

使用PDFBox合并Pdf文件

我必须使用Apache的PdfBox合并两个pdf文件。 我已经采用了物理pdf文件。 以下是代码: PDFMergerUtility ut = new PDFMergerUtility(); ut.addSource(path1); ut.addSource(path2); ut.setDestinationFileName(path3); ut.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly()); 文件合并完美但后面有一些约束如下: 我在代码本身创建第一个文件,所以它是PDDocument对象。 我必须与第一个文件合并的文件是字节数组格式。 我不需要保存合并的文件,但需要将其转换为字节数组。 请任何人帮助我达到这个要求。

Htmlunit:填写自动刷新的表单

我通常可以使用HtmlUnit填写表单并将其提交给服务器。 精细。 不幸的是,我不知道如何根据我在表单上设置的值来填写刷新到服务器的特定表单。 这个表单似乎刷新到服务器,因为在为字段设置值时会触发一些javascript … 举一个简单的例子,我有一个包含2个字段的表单,下拉列表,比如说Country和Region:当我从字段Country选择一个值时,页面自动刷新到服务器(javascript)并显示相同的表单字段区域已更新,可能的值取决于字段Country的先前选择。 这是一个在线测试页面,其中包含我正在讨论的表单: http : //web1.ciemme-service.it/html-unit.nsf/form?OpenForm 我想做的是: – 使用我必须填写的表单加载页面(工作) – 为字段设置值国家(工作) – 等待该页面刷新到服务器(由javascript自动完成… ) – 为字段Region设置一个值 – 提交表单 感谢您提供的任何帮助/提示。

什么是为Spring AOP注入相同服务实例的最佳方式

我是一个使用Spring的@Service构造型注释的ServiceImpl,并且有两个方法,每个方法都使用Spring拦截的自定义注释进行注释。 @Service public class ServiceImpl implements Service{ @CustomAnnotation public void method1(){ … } @AnotherCustomAnnotation public void method2(){ this.method1(); … } } } 现在Spring使用基于代理的AOP方法,因此当我使用this.method1()拦截器@CustomAnnotation将无法拦截此调用时,我们曾经在另一个FactoryClass中注入此服务,这样我们就能够获得代理实例如 – @AnotherCustomAnnotation public void method2(){ someFactory.getService().method1(); … } 我现在使用Spring 3.0.x,这是获取代理实例的最佳方法吗?

从java中的.p7b文件中提取单个.cer证书

我是Cryptography的新手,所以如果您认为这是一个基本问题,请原谅 我有一个.p7b文件,我需要读取并提取单个公共证书,即.cer文件并将其存储在密钥库中。 我不必担心持久存在密钥存储区,因为已经有一个服务将.cer文件作为byte []接收并保存。 我想知道的是,我如何阅读.p7b并提取单个.cer文件? 我知道可以通过openSSL命令完成,但我需要在java中做同样的事情。 我还需要读取Issued By名称,因为它将用作持久保存证书的唯一键。 提前致谢

在Java中,在哪里放置代码以在窗口关闭时可靠地触发?

我有几个窗口,我想保存默认值,在用户采取行动关闭窗口(通过标题栏中的按钮,菜单项或我提供的按钮)之后,在它被处理之前。 有些窗口我可以DISPOSE_ON_CLOSE但有些窗口我需要信息才能处理它们()。 formWindowClosed似乎只在窗口被处理时触发,我不能总是依赖它(见上下文 ) formWindowClosing似乎只有当用户从标题栏的系统菜单关闭窗口时才会触发,即使我在自己的菜单操作处理程序中调用System.exit(0) 根据GC文档,并不总是调用dispose()方法,并且在关闭应用程序时经常会忽略它。 我添加了一个ShutdownHook来运行System.runFinalization()但代码仍未执行。 这可能为时已晚,因为有些窗户将被处理掉。 如何在窗口处理之前确保代码运行? 窗口本身应该能够处理这项任务。 我对封闭,关闭和处置事件的不可靠性感到沮丧。 我错过了什么?

React Native:用java编写AsyncStorage

所以我在java端上有这个来自Intent文本,我想保存到AsyncStorage ,以便之后可以通过React访问它。 我有机会实现这个目标吗? 我有: package com.myapp; import android.app.Activity; import android.os.Bundle; import android.view.KeyEvent; import android.content.Intent; import com.facebook.react.LifecycleState; import com.facebook.react.ReactInstanceManager; import com.facebook.react.ReactRootView; import com.facebook.react.modules.core.DefaultHardwareBackBtnHandler; import com.facebook.react.shell.MainReactPackage; import com.facebook.soloader.SoLoader; public class MainActivity extends Activity implements DefaultHardwareBackBtnHandler { private ReactInstanceManager mReactInstanceManager; private ReactRootView mReactRootView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mReactRootView = new ReactRootView(this); mReactInstanceManager = ReactInstanceManager.builder() .setApplication(getApplication()) […]