This is a common exception that is under authentication scope.
Googling you can find a lot of information related to boot.properties and ldap directory.
Nevertheless, this time is about the Managed Server cannot communicate with Admin Server, thus it starts in independent mode, but being the very first time it doesn't have users from realms, finally any user cannot authenticate to MS.
Well, solving the name MBP.local (in my case), everything is solved. (etc/hosts :P )
<Aug 8, 2016 9:13:58 AM EDT> <Emergency> <Management> <BEA-141151> <The admin server could not be reached at http://MBP.local:7001.> <Aug 8, 2016 9:13:58 AM EDT> <Info> <Configuration Management> <BEA-150018> <This server is being started in managed server independence mode in the absence of the admin server.>
.... ..... ....
<Aug 8, 2016 9:13:59 AM EDT> <Notice> <Security> <BEA-090082> <Security initializing using security realm myrealm.> <Aug 8, 2016 9:13:59 AM EDT> <Critical> <Security> <BEA-090403> <Authentication for user weblogic denied> <Aug 8, 2016 9:13:59 AM EDT> <Critical> <WebLogicServer> <BEA-000386> <Server subsystem failed. Reason: weblogic.security.SecurityInitializationException: Authentication for user weblogic denied weblogic.security.SecurityInitializationException: Authentication for user weblogic denied at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.doBootAuthorization(CommonSecurityServiceManagerDelegateImpl.java:966) at weblogic.security.service.CommonSecurityServiceManagerDelegateImpl.initialize(CommonSecurityServiceManagerDelegateImpl.java:1054) at weblogic.security.service.SecurityServiceManager.initialize(SecurityServiceManager.java:873) at weblogic.security.SecurityService.start(SecurityService.java:141) at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64) Truncated. see log file for complete stacktrace Caused By: javax.security.auth.login.FailedLoginException: [Security:090303]Authentication Failed: User weblogic weblogic.security.providers.authentication.LDAPAtnDelegateException: [Security:090295]caught unexpected exception at weblogic.security.providers.authentication.LDAPAtnLoginModuleImpl.login(LDAPAtnLoginModuleImpl.java:251) at com.bea.common.security.internal.service.LoginModuleWrapper$1.run(LoginModuleWrapper.java:110) at java.security.AccessController.doPrivileged(Native Method) at com.bea.common.security.internal.service.LoginModuleWrapper.login(LoginModuleWrapper.java:106) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) Truncated. see log file for complete stacktrace > <Aug 8, 2016 9:13:59 AM EDT> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to FAILED> <Aug 8, 2016 9:13:59 AM EDT> <Error> <WebLogicServer> <BEA-000383> <A critical service failed. The server will shut itself down>
I've been playing around with HackerRank, which has hard problems, contests and tutorials to become a better developer.
One (of many) interesting features is to have ProjectEuler+ open contest, which is the same PE with timeout handicap, thus becoming much harder, seeking for more elegant solutions :P
On 2013 the famous MIT hunt gave a Regexp puzzle, which became very popular.
It appeared several similar puzzles, but there are a couple sites with similar contraption :
I hit an issue for Tomcat in Mac OS X using ehcache listener for replication:
May 25, 2016 11:07:41 AM org.apache.catalina.core.StandardContext listenerStart SEVERE: Exception sending context initialized event to listener instance of class de.consol.research.cache.part03.ehcache.ServletContextListener net.sf.ehcache.CacheException: Can't assign requested address
Many times in development side, we want to access log files for a remote weblogic.
One easy way (to avoid several constraints) is to have like-a webpage to see these files.
This can be achieved easily with weblogic.xml parameters:
Different WebLogic Server Tools
Bunch of tools to help WLS admin, debugging, etc.
This first version is a war file to access log files from remote client through an HTML file generated by WLS.
the core idea is to show the directories/files of a particular server, this way we can debug easily.
The <index-directory-enabled> element controls whether or not to automatically generate an HTML directory listing if no suitable index file is found.
The default value is false (does not generate a directory). Values are true or false. https://docs.oracle.com/cd/E28280_01/web.1111/e13712/weblogic_xml.htm#WBAPP596
--> <wls:container-descriptor> <wls:index-directory-enabled>true</wls:index-directory-enabled> </wls:container-descriptor> <wls:virtual-directory-mapping> <wls:local-path>/u01/domains1036/MYDOMAIN</wls:local-path> <wls:url-pattern>/servers/logs/*</wls:url-pattern> </wls:virtual-directory-mapping> <wls:virtual-directory-mapping> <wls:local-path>/u01/domains1036/MYDOMAIN/</wls:local-path> <wls:url-pattern>/logs/*</wls:url-pattern> </wls:virtual-directory-mapping> <!-- depending on OS we must use : "/" or "c:" --> <wls:virtual-directory-mapping> <!-- wls:local-path>c:/</wls:local-path --> <wls:local-path>/</wls:local-path> <wls:url-pattern>/tmp/*</wls:url-pattern> </wls:virtual-directory-mapping> <wls:jsp-descriptor> <wls:page-check-seconds>0</wls:page-check-seconds> </wls:jsp-descriptor> <wls:container-descriptor> <wls:servlet-reload-check-secs>0</wls:servlet-reload-check-secs> <wls:resource-reload-check-secs>0</wls:resource-reload-check-secs> </wls:container-descriptor> </wls:weblogic-web-app>
Interesting posts from Martin Fowler, most are his ideas, however there some that is referring to third idea... as usual, it is referenced correctly in his document:
This is Java example of backtracking catastrophic shown in Coding Horror post
This is a known behavior when using nesting repetition operators, that has been analyzed in stackoverlow, regular expressions dedicated sites.
It can be seen the exponential explosion that take to parse using regexp for a simple pattern:
(x+x+)y+
Details of this issue can be found on the above links.
The solution is simple. When nesting repetition operators, make absolutely sure that there is only one way to match the same match.
If repeating the inner loop 4 times and the outer loop 7 times results
in the same overall match as repeating the inner loop 6 times and the
outer loop 2 times, you can be sure that the regex engine will try all
those combinations.
OUTPUT
mvn exec:java -Dexec.mainClass="cl.devweb.regexp.exploit.CatastrophicBacktracking"
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building regexp-exploit 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- exec-maven-plugin:1.4.0:java (default-cli) @ regexp-exploit ---
Found value: xxxxxxxxxxxxxy timer=113.2 μs
Invalid match of 1 chars took 20.97 μs
Invalid match of 2 chars took 14.28 μs
Invalid match of 3 chars took 21.82 μs
Invalid match of 4 chars took 149.2 μs
Invalid match of 5 chars took 26.92 μs
Invalid match of 6 chars took 43.73 μs
Invalid match of 7 chars took 80.80 μs
Invalid match of 8 chars took 135.6 μs
Invalid match of 9 chars took 207.1 μs
Invalid match of 10 chars took 240.6 μs
Invalid match of 11 chars took 442.9 μs
Invalid match of 12 chars took 848.0 μs
Invalid match of 13 chars took 1.623 ms
Invalid match of 14 chars took 2.504 ms
Invalid match of 15 chars took 4.339 ms
Invalid match of 16 chars took 8.163 ms
Invalid match of 17 chars took 16.60 ms
Invalid match of 18 chars took 33.27 ms
Invalid match of 19 chars took 69.98 ms
Invalid match of 20 chars took 138.2 ms
Invalid match of 21 chars took 268.9 ms
Invalid match of 22 chars took 537.9 ms
Invalid match of 23 chars took 977.8 ms
Invalid match of 24 chars took 2.132 s
Invalid match of 25 chars took 4.260 s
Invalid match of 26 chars took 8.433 s
Invalid match of 27 chars took 17.18 s
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 34.977 s
[INFO] Finished at: 2016-03-16T12:38:59-03:00
[INFO] Final Memory: 9M/245M
[INFO] ------------------------------------------------------------------------
We can see taking a Thread Dump, where is spending (wasting?) most of the time:
"main" #1 prio=5 os_prio=31 tid=0x00007f8f9a006000 nid=0x1303 runnable [0x000000010a718000]
java.lang.Thread.State: RUNNABLE
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4272)
at java.util.regex.Pattern$Curly.match(Pattern.java:4234)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.matchInit(Pattern.java:4801)
at java.util.regex.Pattern$Prolog.match(Pattern.java:4741)
at java.util.regex.Pattern$Start.match(Pattern.java:3461)
at java.util.regex.Matcher.search(Matcher.java:1248)
at java.util.regex.Matcher.find(Matcher.java:637)
at cl.devweb.regexp.exploit.CatastrophicBacktracking.main(CatastrophicBacktracking.java:81)