小编Iva*_*ers的帖子

OpenShift Java - 使用Data dir中的图像

我正在尝试创建一个上传图片按钮,然后在另一个jsp页面上显示图像.

我想通过上传到app-root/data/images文件夹来做到这一点.这适用于以下文件路径:filePath = System.getenv("OPENSHIFT_DATA_DIR") + "images/";

但是如何在我的jsp上显示这个图像呢?我试过用:

<BODY>

    <h1>SNOOP PAGE</h1>
    <a href="profielMijnBedrijf.jsp">Ga weer terug</a>
    <% String filepath =  System.getenv("OPENSHIFT_DATA_DIR") + "images/"; 
     out.println("<img src='"+filepath+"logo21.jpg'/>");

    %>

    <img src="app-root/data/images/logo21.jpg"/>
</BODY>
Run Code Online (Sandbox Code Playgroud)

这两个选项都不起作用.我还读到我需要创建一个符号链接.但是,当我在我的app-root/data或者app-root/data/imagesapp-root命令ln -s返回missing file operand

logo21.jpg确实出现在我的Git bash中

java jsp openshift

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

Angular 2 - Mocking - 没有HTTP的提供者

Angular 2.0.0 - Ionic 2 RC0 - Npm 3.10.8 - Node v4.5.0 - Karma 1.3.0 - Jasmine 2.5.2


我正在尝试用Karma和Jasmine测试我的应用程序.现在我到了我遵循一些指南的地步(我是这些测试框架的新手).但遗憾的是,我在尝试执行测试时遇到错误.

我正在尝试测试EventsPage哪个没有Http导入,但它调用我APICaller.service的确使用Http.这就是为什么我创建了一个MockAPICaller但似乎仍然想要的原因Http(也许是因为它是在APICaller构造函数中,但我不知道如何解决这个问题).

所以我怀疑问题在于,MockAPICaller但我不确定.


我会后MockAPICaller.service,APICaller.service,EventsPage和我events.spec.ts.(按此顺序,如果你需要/想要,你可以跳过.

MockAPICaller

import { SpyObject } from './helper';
import { APICaller } from '../apicaller.service';
import Spy = jasmine.Spy;

export class MockAPICaller extends SpyObject {
    getEventsSpy: Spy;
    searchEventSpy:Spy;
    getParticipantSpy:Spy;
    getEventParticipantsSpy:Spy;
    searchEventParticipantSpy:Spy;
    addNewCommentSpy:Spy;
    updateCommentSpy:Spy;
    deleteCommentSpy:Spy;
    getUsernameSpy:Spy;
    presentSuccessMessageSpy:Spy;

    fakeResponse:any;

    constructor(){ …
Run Code Online (Sandbox Code Playgroud)

testing unit-testing mocking ionic2 angular

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

Kotlin-将enum的值赋给不带.value的变量

现在是什么样的:

class Trial {
    companion object{
        @JvmStatic fun main(args: Array<String>){
            val message = Message.ALREADY_REGISTERED.value
            println(message);
        }
    }
}

enum class Message constructor(val value: String){
    ALREADY_REGISTERED("You've already been registered")
}
Run Code Online (Sandbox Code Playgroud)

输出:You've already been registered。但是我想知道,是否有一种方法可以val message = Message.ALREADY_REGISTERED立即分配并立即获得值而无需使用.value

尝试时(使用我想要的代码)

class Trial {
    companion object{
        @JvmStatic fun main(args: Array<String>){
            val message = Message.ALREADY_REGISTERED
            println(message);
        }
    }
}

enum class Message constructor(val value: String){
    ALREADY_REGISTERED("You've already been registered")
}
Run Code Online (Sandbox Code Playgroud)

它输出ALREADY_REGISTERED

那么我可以将枚举返回的值设为默认值而不是其名称吗?

enums kotlin

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

ng test - 意外的标记“const”

我已经使用angular-cli. 现在我正在尝试运行一些单元测试,但我想用 PhantomJS 运行它们而不是 Chrome。所以我改变了我package.json的样子:

{
  "name": "frontend",
  "version": "0.0.0",
  "license": "MIT",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "start-lite": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\"",
    "lite": "lite-server",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "tsc": "tsc",
    "tsc:w": "tsc -w",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@angular/common": "^2.4.0",
    "@angular/compiler": "^2.4.0",
    "@angular/core": "^2.4.0",
    "@angular/forms": "^2.4.0",
    "@angular/http": "^2.4.0",
    "@angular/platform-browser": "^2.4.0",
    "@angular/platform-browser-dynamic": "^2.4.0",
    "@angular/router": "^3.4.0",
    "angular2-wizard": "^0.3.0",
    "bootstrap": "^3.3.7",
    "core-js": "^2.4.1",
    "karma-phantomjs-launcher": …
Run Code Online (Sandbox Code Playgroud)

unit-testing phantomjs karma-runner karma-jasmine angular

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

永远运行`npm start` 找不到'/package.json'

我正在尝试运行npm start并让它永远运行。所以我执行了以下命令forever -c "npm start" /home/deploy/frontend,其中提供的路径指向我的 Angular 2 应用程序的源文件夹。

当我npm start在该文件夹中运行时,精简服务器启动并且一切正常。使用此命令但是,它试图访问/package.json,但因为我在Linux上运行,这会不会导致成..../frontend/package.json只是/package.json

是否有某种配置forever方法可以从我的/home/deploy/frontend/package.json.

日志(仅在 3 次尝试中剪掉了 1 次):

:    /home/deploy/frontend:28134 - error: Script restart attempt #3
data:    /home/deploy/frontend:28134 - npm ERR! Linux 4.4.0-72-generic
data:    /home/deploy/frontend:28134 - npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "start" "/home/deploy/frontend"
data:    /home/deploy/frontend:28134 - npm ERR! node v7.10.0
data:    /home/deploy/frontend:28134 - npm ERR! npm  v4.2.0
data:    /home/deploy/frontend:28134 - npm ERR! path /package.json
data: …
Run Code Online (Sandbox Code Playgroud)

node.js forever

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

SQL/Oracle - “无法将 null 插入主键”

因此,我有一个 Oracle 数据库(在 APEX 中),其中有一个名为“Scheme”的列。

如下所示:

CREATE TABLE Scheme
  (
Scheme_ID    NUMBER NOT Null,
description VARCHAR2 (800) ,
price FLOAT (3) ,
amount_sold     INTEGER ,
Personal_Trainer_ID NUMBER NOT NULL
) ;
ALTER TABLE Schema ADD CONSTRAINT Schema_PK PRIMARY KEY ( Schema_ID ) ;
Run Code Online (Sandbox Code Playgroud)

现在,我的所有表都像这样设置并且完美工作,但是当我尝试在我的方案上插入时,它说我正在尝试将 null 插入到主键 schema_ID 中。

我将向您展示我使用的 2 个 SQL 插入。一份用于私人教练,一份用于计划。

INSERT INTO Personal_Trainer (name, loginname, date_of_birth, password)
VALUES('Bojan', 'Bojan', '15-07-1974','fitline');
Run Code Online (Sandbox Code Playgroud)

Peronal_Trainer 有一个 Personal_Trainer_ID 作为主键,其设置与方案完全相同。插入此命令效果非常好。

insert into schema (description, price, amount_sold, Personal_Trainer_ID)
values ('3x pushups, 5x bench, 7x …
Run Code Online (Sandbox Code Playgroud)

sql oracle null primary-key oracle-apex

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

Java - 将 yyyy-MM-dd'T'HH:mm:ssZ 转换为可读的 dd-MM-yyyy

我将有一个字符串输入的样式:

yyyy-MM-dd'T'HH:mm:ssZ

是否可以将此字符串转换为日期,然后再将其解析为可读的dd-MM-yyyy日期对象?

java date

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

C# - TakeWhile和SkipWhile没有回来?

我有一个RekenReeks类,它返回从2开始的数字,乘以2.所以{2,4,8,16,32,64}

现在我了解了TakeWhile和SkipWhile方法以及LINQ.

所以我创建了3个变量,它们应该存储完全相同,但我Console.WriteLine唯一的打印选择1而不是2和3.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            RekenReeks reeks = new RekenReeks(2, n => n * 2);
            var selection = from i in reeks
                        where i > 10
                        && i < 1000
                        select i;

        var selection2 = reeks.TakeWhile(n => n < 1000 && n > 10);

        var selection3 = reeks.SkipWhile(n => n > 1000 && n < 10);

        foreach (int i …
Run Code Online (Sandbox Code Playgroud)

c# linq lambda expression

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

Angular 2(Mock Ionic2) - 没有App的提供者

我正在尝试spec.ts为我的应用程序创建一个.可悲的是这是使用LoadingControllerionic-angular.现在,当我尝试配置模块时,我需要为它提供LoadingController(因为它在模块的构造函数中).

我目前遇到的问题是LoadingController想要提供一个App对象/实例.(_app: App参数)

我很绝望,所以我自己问了Ionic.github#8539

但是他们关闭了我的问题,因为这是一个问题,而不是一个问题,尽管我遇到了一些他们没有回应的问题.如果这是不可能的/没有人知道如何将是一个耻辱,因为它是一个非常酷的功能,它不仅影响LoadingController,因此AlertController和ToastController也受此影响.

我的testbed配置atm:

TestBed.configureTestingModule({
    declarations: [EventsPage],
    schemas: [CUSTOM_ELEMENTS_SCHEMA],
    providers: [
      {provide: APICaller, useValue: mockAPICaller},
      {provide: NavController, useValue: mockNavController },
      {provide: LoadingController, useValue: ???????}, //it seems like everything I try to enter here fails.
    ],
    imports: [FormsModule]
  });
Run Code Online (Sandbox Code Playgroud)

和EventsPage构造函数:

constructor(public apiCaller: APICaller, public navCtrl: NavController,
             public loadingCtrl: LoadingController){}
Run Code Online (Sandbox Code Playgroud)

编辑:LoadingController的用法

getEvents() {
    // setup a loadingscreen
     let loading = this.loadingCtrl.create({
      content: "Loading..."
    }); 
   // present the loadingscreen
    loading.present(); …
Run Code Online (Sandbox Code Playgroud)

unit-testing mocking ionic2 angular2-testing angular

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

动态按下 Enter 时禁用输入

我正在制作一个网站,其中会有很多输入字段。有点像扫描仪,我想在按下 Enter 时禁用每个输入。

我现在有这个:

<input (keyup.enter)="doSomething()"/>

但我想传递输入本身,以便我可以禁用这些输入。(例如:doSomething(input) { input.attr.disabled = true; }

如何在我的doSomething函数中获取此输入字段?

注意:我不想使用类似的东西,<input #input ...因为我有很多输入字段。这只会产生大量的工作。

我想要的是每次在输入字段中按下回车键时,它都会被禁用(仅使用一个功能)。

angular

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