我在WildFly 10服务器上运行我的应用程序.我不希望将我的连接细节放在我的应用程序src代码上,因此我试图将它放在WildFly 10服务器本身.
但是我遇到了问题.
在[WILDFLY_HOME]\modules\system\layers\base\com\microsoft,我创建了以下目录sqlserver\main,并将我的JAR文件和我的XML文件放在主文件夹中.
我正在使用的JAR是sqljdbc.jar.
module.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!-- JDBC Drivers module.xml file to configure your JDBC drivers-->
<!-- SQL Server 2014 example -->
<module xmlns="urn:jboss:module:1.3" name="com.microsoft.sqlserver">
<resources>
<resource-root path="sqljdbc.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.transaction.api"/>
</dependencies>
</module>
Run Code Online (Sandbox Code Playgroud)
接下来[WILDFLY_HOME]\standalone\configuration,我修改了standalone.xml.在子系统数据源部分下,我添加了SQL Server的详细信息.
standalone.xml:
<subsystem xmlns="urn:jboss:domain:datasources:4.0">
<datasources>
<datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
<connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>
<driver>h2</driver>
<security>
<user-name>sa</user-name>
<password>sa</password>
</security>
</datasource>
<datasource jndi-name="java:/TestDS" pool-name="TestDS" enabled="true" use-java-context="true">
<connection-url>jdbc:sqlserver://localhost\test:1433;databaseName=test</connection-url>
<driver>mssql</driver>
<security>
<user-name>sa</user-name>
<password>Password123!</password>
</security>
<pool> …Run Code Online (Sandbox Code Playgroud) 我在 linux 服务器中执行 npm start 时遇到了问题。
它显示退出代码 126 和权限被拒绝的错误。
我已经chmod 777对 server.js 或者更确切地说是对整个 demoTest 文件夹进行了处理。
我该如何解决这个问题?
日志如下所示。
info it worked if it ends with ok
1 verbose cli [ '/opt/node-v8.11.3-linux-x64/bin/node', '/bin/npm', 'start' ]
2 info using npm@5.6.0
3 info using node@v8.11.3
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle demoTest@1.0.0~prestart: demoTest@1.0.0
6 info lifecycle demoTest@1.0.0~start: demoTest@1.0.0
7 verbose lifecycle demoTest@1.0.0~start: unsafe-perm in lifecycle true
8 verbose lifecycle demoTest@1.0.0~start: PATH: /opt/node-v8.11.3-linux-x64/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/home/useradmin/demoTest/node_modules/.bin:/sbin:/bin:/usr/sbin:/usr/bin
9 verbose lifecycle demoTest@1.0.0~start: CWD: …Run Code Online (Sandbox Code Playgroud) I am using nodejs and sinon.
目前,当我运行我的应用程序(即 UpdateTask 类)时,它工作正常,甚至出现错误。
然而,当我开始进行单元测试时,我遇到了以下问题。
AssertError: expected updateBook to be called once but was called 0 times
Run Code Online (Sandbox Code Playgroud)
我不明白为什么它应该被调用 0 次,而它应该被调用一次。
我的代码中有什么错误吗?
更新任务类:
function updateInfo() {
let updateCountParams = [];
let updateParams = [];
let idsToUpdateList = null;
tempTable.getBookForUpdateCount(updateCountParams, function (results) {
if (results[0].RECCOUNT > 0) {
tempTable.getBookForUpdate(updateParams, function (results) {
idsToUpdateList = results;
for (var i = 0; i < idsToUpdateList.length; i++) {
let id = idsToUpdateList[i].id;
let param = [];
param.push(id);
let request = …Run Code Online (Sandbox Code Playgroud) 我已经RouterTestingModule为我的单元测试添加了导入。但它仍然抛出以下错误。
唯一的区别是知道我的路由页面与规范不同。
我附上了我的代码以供参考。
我需要改变什么?或者我如何使用我的路由器类测试我的拦截器?
安慰:
NullInjectorError: StaticInjectorError(DynamicTestModule)[ErrorHandlerInterceptor -> Router]:
StaticInjectorError(Platform: core)[ErrorHandlerInterceptor -> Router]:
NullInjectorError: No provider for Router!
error properties: Object({ ngTempTokenPath: null, ngTokenPath: [ 'ErrorHandlerInterceptor', Function ] })
Run Code Online (Sandbox Code Playgroud)
致命错误-routing.module.ts:
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { extract } from '@app/core';
import { FatalerrorComponent } from './fatalerror.component';
const routes: Routes = [
// Module is lazy loaded, see app-routing.module.ts
{ path: '', component: FatalerrorComponent, data: { title: extract('Fatal Error') } …Run Code Online (Sandbox Code Playgroud) node.js ×2
angular ×1
jasmine ×1
linux ×1
mssql-jdbc ×1
server ×1
sinon ×1
sql-server ×1
unit-testing ×1
wildfly ×1
wildfly-10 ×1