GF
Size: a a a
GF
GF
AT

GF
GF
AT
PD
@ Value ("classpath:*/images/h2h.png")
private Resource logo;Код, которым я достаю эту картинку из ресурса такой:private void loadCompanyImage(CompanyUser company, H2HObject object) {
File companyLogo = company.getCompany().getLogo();
if (companyLogo != null) {
object.setPicture(companyLogo);
}else{
try {
final InputStream is = logo.getInputStream();
final byte[] logoArray = new byte[is.available()];
final Path contentType = logo.getFile().toPath();
//final String contentType = URLConnection.guessContentTypeFromStream(is);
is.read(logoArray);
companyLogo = File.builder()
.content(logoArray)
.name(logo.getFilename())
.type(Files.probeContentType(contentType))
.build();
object.setPicture(companyLogo);
is.close();
}
catch(IOException ex) {
log.error("Can't find and handle object logo", ex);
}
}
}много раз пробовал и ничего. В pom.xml добавил этот кусок для загрузки ресурсов в сборку в папку target/resources в надежде, что classpath туда тоже будет адресован, но нифига:<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-resources</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
</execution>
</executions>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
<outputDirectory>target/resources</outputDirectory>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>images/*</include>
</includes>
</resource>
</resources>
</configuration>
</plugin>
PD
PD
AS
PB
А
M
@ Value ("classpath:*/images/h2h.png")
private Resource logo;Код, которым я достаю эту картинку из ресурса такой:private void loadCompanyImage(CompanyUser company, H2HObject object) {
File companyLogo = company.getCompany().getLogo();
if (companyLogo != null) {
object.setPicture(companyLogo);
}else{
try {
final InputStream is = logo.getInputStream();
final byte[] logoArray = new byte[is.available()];
final Path contentType = logo.getFile().toPath();
//final String contentType = URLConnection.guessContentTypeFromStream(is);
is.read(logoArray);
companyLogo = File.builder()
.content(logoArray)
.name(logo.getFilename())
.type(Files.probeContentType(contentType))
.build();
object.setPicture(companyLogo);
is.close();
}
catch(IOException ex) {
log.error("Can't find and handle object logo", ex);
}
}
}много раз пробовал и ничего. В pom.xml добавил этот кусок для загрузки ресурсов в сборку в папку target/resources в надежде, что classpath туда тоже будет адресован, но нифига:<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-resources</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
</execution>
</executions>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
<outputDirectory>target/resources</outputDirectory>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>images/*</include>
</includes>
</resource>
</resources>
</configuration>
</plugin>
@ Value ("classpath:*/images/h2h.png") звёздочка не там. Должна быть classpath*:;Value, а то это ужасно смотрится (хотя, конечно, ни на что не влияет).ClassPathResource, вместо @Value, чтобы было легче дебажить: private Resource logo = new ClassPathResource("/images/h2h.png");logo.getFile() посмотрев какой в итоге абсолютный путь до ресурса получается и лежит ли действительно там файл.PD
@ Value ("classpath:*/images/h2h.png") звёздочка не там. Должна быть classpath*:;Value, а то это ужасно смотрится (хотя, конечно, ни на что не влияет).ClassPathResource, вместо @Value, чтобы было легче дебажить: private Resource logo = new ClassPathResource("/images/h2h.png");logo.getFile() посмотрев какой в итоге абсолютный путь до ресурса получается и лежит ли действительно там файл.PD
PD
A
PD
A
PD