我正在尝试使用Spring Rest发送文件列表,但是我得到了这个例外.
Could not write content: No serializer found for class java.io.ByteArrayInputStream
它适用于一个文件(ByteArrayResource).
它不适用于文件列表(List<ByteArrayResource>).
以下是我的代码的重要部分:
List<ByteArrayResource> contentsAsResource = new ArrayList<ByteArrayResource>();
for(MultipartFile fichier : fichiers) {
contentsAsResource.add(new ByteArrayResource(fichier.getBytes()) {
@Override
public String getFilename()
{
return fichier.getOriginalFilename();
}
});
};
map.add("files", contentsAsResource);
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
HttpEntity<LinkedMultiValueMap<String, Object>> requestEntity = new HttpEntity<LinkedMultiValueMap<String, Object>>(map, headers);
FormHttpMessageConverter formConverter = new FormHttpMessageConverter();
formConverter.setMultipartCharset(Charset.forName("UTF8"));
formConverter.addPartConverter(new MappingJackson2HttpMessageConverter());
this.restClientHelper.getRestTemplate().getMessageConverters().add(formConverter);
this.restClientHelper.getRestTemplate().postForObject("file/save", requestEntity, Object.class);
Run Code Online (Sandbox Code Playgroud)
我尝试过以下哪些不起作用:
我一直在调试反序列化,但要理解它真是太痛苦了!
如果它可以帮助,使用一个文件,使用转换器' ResourceHttpMessageConverter'. …
我正在尝试使实体日期选择器可编辑.这是目标,用户可以直接在输入字段中写日期或使用小部件来选择日期.
我做了一些即将在这个jsfiddle上工作的东西.但是我正试图解决一个错误.当用户直接在输入中写入日期时,选择器也需要获取新值(因为我使用不同的格式来提交日期,并且有一个隐藏的输入字段要更新).要做到这一点,我试着这样做
picker.set('select', $(this.val());
Run Code Online (Sandbox Code Playgroud)
但是它会创建一个无限循环,因为实现中的方法set也会触发change输入上的事件.
编辑:哦,我刚刚发现在github上存在一个问题.你对解决方法有什么想法吗?
我有时会在我的 gradle 构建过程中遇到元空间错误。
在我的 gradle 配置中,我使用 swagger code-gen 来生成很多类(~40)。我想这可能是问题的来源。
这是build.gradle文件的摘录
dependencies {
...
implementation("io.swagger:swagger-annotations:1.5.10")
implementation("io.springfox:springfox-swagger2:2.9.2")
swaggerCodegen("io.swagger.codegen.v3:swagger-codegen-cli:3.0.0")
}
...
swaggerSources {
doe1 {
inputFile = file('src/main/resources/wiremock/gfc/yaml/doe-1.yaml')
code {
language = 'spring'
components = ['models']
additionalProperties = ["modelPackage": "io.swagger.model.doe1", "invokerPackage": "io.swagger.model"]
}
}
doe2 {
inputFile = file('src/main/resources/wiremock/gfc/yaml/doe-2.yaml')
code {
language = 'spring'
components = ['models']
additionalProperties = ["modelPackage": "io.swagger.model.doe2", "invokerPackage": "io.swagger.model"]
}
}
...
doe40 {
inputFile = file('src/main/resources/wiremock/gfc/yaml/doe-40.yaml')
code {
language = 'spring'
components = ['models']
additionalProperties = …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用selenium-driver启动我的mocha测试,但是我收到了这个错误:https://gist.github.com/Clemzd/f7bbaa77c492ee288765#file-gistfile1-txt.
我的selenium-server启动良好,因为我能够运行chrome会话.这是我用来启动我的mocha测试的代码:https://github.com/Clemzd/paige-tests.
我试图增加摩卡的超时但它不会改变任何东西.
我使用由实现框架提供的可折叠组件.我得到一个错误,不知道如何解决它或找到一个解决方法.如果一个选项卡的内容太大,当我打开选项卡时,它不会滚动到选项卡本身的顶部(它会转到中间).
你可以在这里试试:https://jsfiddle.net/r8314ouq/.打开第一个选项卡,然后打开第三个选项卡,您将看到它不会滚动到选项卡的开始.
我知道了
但我想看看
这非常烦人,因为用户必须滚动才能看到所有内容.
我按照文档创建了我的可折叠:
<ul class="collapsible" data-collapsible="accordion">
<li>
<div class="collapsible-header"><i class="material-icons">filter_drama</i>First</div>
<div class="collapsible-body"><p>Lorem ipsum dolor sit amet.</p></div>
</li>
<li>
<div class="collapsible-header"><i class="material-icons">place</i>Second</div>
<div class="collapsible-body"><p>Lorem ipsum dolor sit amet.</p></div>
</li>
<li>
<div class="collapsible-header"><i class="material-icons">whatshot</i>Third</div>
<div class="collapsible-body"><p>Lorem ipsum dolor sit amet.</p></div>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
我试图捕捉事件并滚动到但它没有用.有任何想法吗?
我正在尝试为图标的背景着色(来自material-icons)但不超出其轮廓(下图所示)。
如此jsfiddle所示,我只能为背景着色,但它不适合图标。
.material-icons {
background:white;
}
Run Code Online (Sandbox Code Playgroud)
开始 :
我试图得到什么:
我成功地做到了:
我没有找到图标的填充版本。理想情况下,我不想使用其他字体来回答这个问题。是否可以在 CSS 中做到这一点,或者我是否必须使用不同版本的图标?
我正在尝试做一个 ngIf ,其结果取决于承诺。
模板
<div>
<select [(ngModel)]="carValue" name="carName">
<option value="renault">Renault</option>
<option value="bmw">Bmw</option>
</select>
<p *ngIf="isDisplayed()">Good choice!</p>
</div>
Run Code Online (Sandbox Code Playgroud)
到目前为止,函数 isDisplayed 是
isDisplayed() {
return this.carValue === 'bmw';
}
Run Code Online (Sandbox Code Playgroud)
但我希望它是异步的。就像是
isDisplayed() {
return this.getBestChoice().then((result) => result);
}
getBestChoice() {
// fake http call
return new Promise((resolve) => {
setTimeout(() => resolve('bmw'), 3000);
});
}
Run Code Online (Sandbox Code Playgroud)
显然这是行不通的。我有如何实现这个的想法,但不确定它是否干净。
这是一个朋克。
我正在尝试swagger codegen在使用 gradle (kotlin) 构建的项目中工作。
我的参考是这里的示例: https: //github.com/int128/gradle-swagger-generator-plugin,它是在Gradle groovy版本中制作的。
现在情况build.gradle.kts如下:
repositories {
jcenter()
}
plugins {
java
id("org.springframework.boot") version "2.1.2.RELEASE"
id("io.spring.dependency-management") version "1.0.6.RELEASE"
id("org.hidetake.swagger.generator") version "2.16.0"
}
dependencies {
implementation("org.springframework.boot:spring-boot-starter-web")
implementation ("io.swagger:swagger-annotations:1.5.21")
swaggerCodeGen("io.swagger:swagger-codegen-cli:2.3.1")
// Use JUnit test framework
testImplementation ("junit:junit:4.12")
}
swaggerSources {
petstore {
inputFile = file('petstore.yaml')
code {
language = 'spring'
}
}
}
Run Code Online (Sandbox Code Playgroud)
但 IntelliJ 不喜欢谈论 swagger 的台词:
我是 gradle 的新手,所以我不明白我应该做什么。swaggerCodeGen 应该是一个函数吗?这个函数应该在哪里导入?swaggerSources应该从哪里进口?
我只是用
IOUtils.copy(myInputStream, myOutputStream);
Run Code Online (Sandbox Code Playgroud)
我在调用IOUtils.copy之前看到输入流可以读取而不是之后.
flux.available()
(int) 1368181 (before)
(int) 0 (after)
Run Code Online (Sandbox Code Playgroud)
我看到了这方面的一些解释后,我看我可以复制 bytes从我InputStream的ByteArrayInputStream,然后用mark(0)和read(),以多次读取的输入流.
这是得到的代码(正在运行).我发现这段代码非常冗长,如果有更好的解决方案,我想要这样做.
ByteArrayInputStream fluxResetable = new ByteArrayInputStream(IOUtils.toByteArray(myInputStream));
fluxResetable.mark(0);
IOUtils.copy(fluxResetable, myOutputStream);
fluxResetable.reset();
Run Code Online (Sandbox Code Playgroud) 我尝试禁用实现中的按钮而不删除click事件。但是正如您在此jsfiddle上看到的那样,我只能得到视觉效果。点击事件仍在启动。
我尝试了以下方法:
$('#btnOne').prop('disabled', true).addClass('disabled');
Run Code Online (Sandbox Code Playgroud)
是虫子吗?还是我做错了什么?
编辑:似乎标记没有问题 button
java ×3
materialize ×3
gradle ×2
jquery ×2
angular ×1
css ×1
html ×1
inputstream ×1
javascript ×1
kotlin ×1
mocha.js ×1
openapi ×1
pickadate ×1
promise ×1
spring ×1
spring-mvc ×1
swagger ×1