Closed iceycake closed 8 years ago
I presume you are talking about legacy applications (otherwise why wouldn't you just re-write them to use key-value pairs)? I'm not sure how or whether we should support legacy, non-cloud-native apps.
Yes and No.
@dsyer Should this be tagged with a milestone?
Hi, Spring cloud config looks like a great solution for distributed config. Thanks!
We have a use case where we want to also load plain files like XML through centralized config server.
Is this fix intended to also cover non key value type plain text files like a logback xml and such?
Looks like the resource is always loaded to an Environment object and this is not supported yet.
StandardEnvironment environment = prepareEnvironment( this.environmentRepository.findOne(name, profile, label));
Looks like the resource is always loaded to an Environment object and this is not supported yet.
@vishalmanohar Not sure what that means. Loading plain text files (including xml) is supported.
I get this error when I try to load an XML resource using the config server (using this path) from this config repo
Am I missing anything?
2016-03-23 09:45:58.376 ERROR 18199 --- [nio-8888-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.IllegalStateException: Unable to load configuration files] with root cause
org.xml.sax.SAXParseException: Document root element "catalog", must match DOCTYPE root "null".
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203) ~[na:1.8.0_66]
@vishalmanohar that's the wrong url according to the docs it should be.
/{appname}/{profile}/{label}/{path}
.
So in your case http://localhost:8888/myapp/default/master/books.xml
.
This does environment expansion in the text file. If you don't need that, it won't matter the
Ah thanks. This path is however failing http://localhost:8888/books/default/master/books.xml
Is that a bug or incorrect use?
Failing how? Is there actually an XML file? Are you using the latest code base?
I have the same issue, as vishalmanohar
What is it (the issue)? How is it failing?
This path http://localhost:8888/books/default/master/books.xml
is failing on pointing latest spring config server to this repo
Using any other app name works. For e.g.
http://localhost:8888/random/default/master/books.xml
i.e. when the appname is the name of the file, there is an error.
I see. Thanks for the clarification. That's actually because your XML file is not a valid java.util.Properties
file ("books" is the name of the app, so we need to read all the environment properties for that app, and XML is a valid representation of Properties
, in principle). You can work around it (obviously) by putting your non-properties XML in a different path. If you want to continue the discussion, please open another issue, instead of camping on this old one.
Hi I am Trying to connecting with Redis cloud bus for native file configuration. My client is not getting refreshed.
I have enabled RefreshScope but not getting the events. Following are dependencies from
Any Suggestions? Thanks in advance.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bus-redis</artifactId>
<version>1.1.0.M5</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-stream-binder-redis</artifactId>
<version>1.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
@kaeukola please don't comment on closed, unrelated issue. For a question like that, please use stack overflow with spring-cloud tag.
how to get the books.xml in spring bean ?
Spring Cloud Config Server is a perfect solution for simple key/value application properties. However, a lot of applications have additional resource files based on different profile. For example, keystore jks file, custom XML file, etc.
My current workaround is storing those files under the same config-repo in git. During deployment, I need to write script to copy those files over from git to the application server config/ directory. It is not perfect but doing the job.
However, I am running into issue about there are text file contains sensitive data. I can encrypt those files and storing them onto git and decrypt them during deployment.
I don't know if this make any sense?