• cheeser
  • ernimril
  • joed
  • kinabalu
  • lunk
  • ojacobson
  • r0bby
  • ThaDon
  • ricky_clarkson
  • topriddy

« 2021-05-06


2021-05-08 »

Nick Message Date
v01d4lph4 [v01d4lph4!~v01d4lph4@] has joined ##java [12:34]
v01d4lph4 [v01d4lph4!~v01d4lph4@] has joined ##java [12:39]
orbyt_ [orbyt_!~orbyt@] has joined ##java [12:55]
dpl [dpl!] has joined ##java [01:00]
ricky_clarkson 0.1 + 0.1 + 0.1 != 0.3 is a good example [01:30]
Feuermagier [Feuermagier!~Feuermagi@] has joined ##java [01:30]
Feuermagier [Feuermagier!~Feuermagi@2a02:2488:4211:3400:7285:c2ff:fe22:172e] has joined ##java [01:34]
Tabmow Yeah, granted I don't really know exactly what I'm looking at but I'm seeing some mixture of float/Float/int stuff all to do with the same/similar calculations. I'm guessing that's not a great idea. [01:45]
ricky_clarkson Float in particular is a really bad idea in most cases. It gets inaccurate even for relatively small numbers. [01:52]
ricky_clarkson 16777216F + 1 == 16777216F [01:52]
ScrambledRK [ScrambledRK!] has joined ##java [01:53]
svm_invictvs [svm_invictvs!~svm_invic@unaffiliated/svminvictvs/x-938456] has joined ##java [01:57]
Tabmow Well that doesn't seem right :P [02:02]
ricky_clarkson Not only is it right, it's inevitable, an artifact of the way they're stored. [02:09]
Tabmow Could those sort of calculations also differ on different operating systems/hardware? [02:15]
Matthijs [Matthijs!~quassel@unaffiliated/matthijs] has joined ##java [02:17]
cliluw [cliluw!~cliluw@unaffiliated/cliluw] has joined ##java [02:39]
led1 [led1!~Thunderbi@] has joined ##java [02:47]
sbeex [sbeex!4d38c0ff@gateway/web/cgi-irc/] has joined ##java [02:48]
sbeex Hi guys, I am desperately trying to play with some functional programming but cannot figure out why the following do not work... it seems that the flatMap content is never returned.. the file is persisted on the disk but then nothing happens.. [02:51]
sbeex [02:51]
sbeex thank you in advance for your help [02:51]
dpl [dpl!] has joined ##java [03:10]
_lucifer sbeex, how do you subscribe to the Mono? [03:20]
sbeex I use it via spring which does it for me in the @RestController [03:21]
sbeex (if I understood correctly it does it underhood) [03:21]
sbeex *under the wood [03:21]
sbeex i basically try to 1) store the file on disk, 2) when its done -> save some metadata related to this file on a nosql db (size of the file, extension, original filename etc) and then return the created metadata [03:22]
sbeex the problem is that I receive a Mono<Void> from the file transfer to the disk and then I like to call a repo which returns me a Mono<Blob> that I like to return and not a Mono<Void> [03:23]
sbeex _lucifer I hope you could understand me (it's not that easy to explain for me sorry really new to the functional programming) [03:24]
Lengsdorfer [Lengsdorfer!~Lengsdorf@unaffiliated/lengsdorfer] has joined ##java [03:24]
_lucifer sbeex, i haven't spring reactor before but my understanding is that you need to consume the result in order for operations like flatMap to be invoked. [03:26]
sbeex _lucifer okay so for that I would have to use tansfer(file).then().flatMap() [03:26]
sbeex then is executed after the first finished from what I could read in the doc [03:27]
sbeex but still same issue.. [03:27]
sbeex I am reading this doc here to understand a bit.. but haha what a world :D [03:27]
sbeex sbeex's title: "Reactor 3 Reference Guide" [03:27]
archer121 [archer121!75d99900@] has joined ##java [03:28]
sherlock2 [sherlock2!] has joined ##java [03:28]
_lucifer I meant you need to consume the result of flatMap(). [03:30]
sbeex `If the source Mono is either empty or a Mono<Void> (a Mono<Void> is empty for all intents and purposes), some combinations are never called.` [03:30]
koevet [koevet!] has joined ##java [03:31]
sbeex the transferFile() return a Mono<Void> maybe that's the cause [03:31]
sbeex Similarly, operators that use a Function<T,?> to tune their behavior, such as flatMap, need at least one element to be emitted for the Function to have a chance to apply. Applying these on an empty (or <Void>) sequence nevers produce an element. [03:32]
sbeex ok yes.. that's why [03:32]
fairuz [fairuz!~fairuz@unaffiliated/fairuz] has joined ##java [03:37]
LionBar_ [LionBar_!~l@gateway/tor-sasl/lionbar] has joined ##java [03:49]
xa0s_ [xa0s_!] has joined ##java [03:52]
FabioP [FabioP!] has joined ##java [03:52]
hendursa1 [hendursa1!~weechat@gateway/tor-sasl/hendursaga] has joined ##java [04:07]
ge0rgios [ge0rgios!~george@unaffiliated/anaphaxeton] has joined ##java [04:07]
xeeder [xeeder!] has joined ##java [04:08]
recursiveNode [recursiveNode!] has joined ##java [04:26]
bolovanos_ [bolovanos_!~bolovanos@unaffiliated/bolovanos] has joined ##java [04:32]
AmVarPG [AmVarPG!] has joined ##java [04:49]
dob1_ [dob1_!~dob1@unaffiliated/dob1] has joined ##java [04:50]
DunceCotus [DunceCotus!01986a69@] has joined ##java [04:52]
wender [wender!~Wender@] has joined ##java [04:53]
bolovanos__ [bolovanos__!~bolovanos@unaffiliated/bolovanos] has joined ##java [04:58]
archer121 [archer121!75d99900@] has joined ##java [05:01]
archer121 Whats the best way to get the currency code from the two letter currency code? Either I have to maintain a map, or do this: [05:01]
archer121 Currency.getInstance(new Locale("", countryCode)).getCurrencyCode() [05:01]
archer121 Passing and empty string for the language, is it safe? Is there any other better ways? I could not find anything online. [05:01]
Tabmow [Tabmow!~tabmow@freenode/staff-emeritus/tabmow] has joined ##java [05:01]
xeeder [xeeder!] has joined ##java [05:02]
Maldivia archer121: when you say countryCode, what do you mean? [05:04]
callq [callq!~callq@] has joined ##java [05:04]
whaley_ [whaley_!] has joined ##java [05:13]
michele [michele!~eraser@unaffiliated/michele] has joined ##java [05:32]
acidjnk_new2 [acidjnk_new2!] has joined ##java [05:40]
makara1 [makara1!~sol@] has joined ##java [05:43]
makara1 hi. I'm trying to get hotswapping working. I installed an alternative JVM [05:44]
makara1 makara1's title: "Releases TravaOpenJDK/trava-jdk-11-dcevm GitHub" [05:44]
makara1 i remove the package declaration from and compile it [05:44]
makara1 makara1's title: "Small-console-apps/ at master bobend212/Small-console-apps GitHub" [05:44]
makara1 and I run `java FizzBuzz -XX:HotswapAgent=fatjar,autoHotswap=true,extraClasspath=FizzBuzz.class` [05:45]
makara1 oh, and I put it in a while(true) loop [05:45]
makara1 but when I recompile with a different message, the agent doesn't seem to reload the class [05:46]
mbooth Never heard of Trava before. Any particular reason to use it? [05:49]
chewb [chewb!~chewb@] has joined ##java [05:49]
mbooth makara1: But sounds like a tech support question for the makers of Trava. [05:50]
mbooth makara1: I've never had a problem with hotswapping bytecode in a vanilla OpenJDK though, so interested in what the advantages are of Trava [05:51]
chewb i need to modify something on most of primefaces datatables i use in project. For example i need to add search button that will filter on all columns inputed after click. I should have put datatable and searchbutton into one component so i could modify it once and it will have effect on all datatables, right? [05:51]
yawkat "Since it is based on dcevm and integrated HotswapAgent, it allows advanced hotswap like method-field addition and many more." [05:51]
yawkat so like jrebel? [05:51]
mbooth Probably. [05:52]
chewb Problem is: my search button calls javascript function, as argument this function takes widgetVar of datatable to filter. But if i try to input widget var as parameter to composite component, then same does not work [05:52]
mbooth And you don't need a specially modified JDK to run jrebel.... [05:52]
mbooth So, that already sounds like a net loss for Trava [05:53]
chewb By "does not work" i mean javascript function gets called with empty string. I go to any view, check page Source, and call gets evaluated to <input src="filterTable('')"> or sometihn like that [05:53]
makara1 jrebel is commercial [05:54]
chewb even weirder thing is: vidgetVar id is hardcoded, i dont use any variable, so there should be no problem of function getting called before entire view get rendered, so somevariable is empty etc [05:55]
makara1 i need to hotswap by replacing JARs, so without using IDE, debug port etc [05:55]
makara1 yawkat: what is method field addition? Can I expect it to hotswap the FizzBuzz while its waiting for input in that while loop? Or does every class that is replaced have to be re-instantiated? [05:56]
yawkat you can probably expect a lot of tinkering [05:57]
yawkat theres a reason why jrebel is so complex [05:58]
chewb anyway i have no idea how to refactor dataTable to composite component, if each datatable has different set of hardcoded columns? Like <column name="1"> <column name="2"> etc [05:58]
fairuz [fairuz!~fairuz@unaffiliated/fairuz] has joined ##java [06:04]
led1 [led1!~Thunderbi@] has joined ##java [06:08]
archer121 Maldivia by country code I mean the ISO 2 letter country code. ISO 3166 alpha-2 country code [06:14]
[twisti] makara1: i dont think thats how hotswapping works. if you have a while loop, its running code, and that code cant ever get replaced (i think). what you want is two classes: class A has code that looks like 'while (true) { B b = new B(); b.something(); }' then you can hotswap B, and whenever new B runs, there is a chance to hotswap in a new version of B [06:16]
chewb ok, so my question is: how do i change filtering globally for all datatables in the project [06:17]
chewb actually there are duplicates on serverside for every datatable, i mean every view has own LazyXModel, that duplicates most of code, only difference it fetches another data [06:21]
chewb not sure if i can do it on JSF side without duplication [06:22]
makara1 [twisti]: sounds reasonable. But not very convincing to call it "hotswap". Or at least, they need better documentation to deal with inflated expectations [06:28]
[twisti] well, the classes are hotswapped [06:30]
mbooth Swapping bytecode in a running VM is not very convincing to call it hotswap? [06:30]
makara1 mbooth: how and what state is preserved? Thats my question [06:31]
[twisti] swapping active, hot code might be supported too, idk, debugging is pretty much magic these days [06:31]
makara1 [06:31]
makara1 mbooth: you might as well say saving a java file on a running computer is hotswapping [06:32]
[twisti] makara1: if you look at #1 in what you just linked, it suggests exactly what i advised earlier :D [06:32]
mbooth makara1: Lol, no [06:32]
makara1 inotifywait -r -m -e modify | javac [06:36]
mbooth makara1: Don't be disingenuous [06:37]
Maldivia makara1: you cannot move a class to another package and then "reload" it [06:38]
Maldivia it becomes a new class that way [06:38]
Maldivia yawkat: and yes, HotswapAgent is an attempt to build configuration reloading on top of DCEVM, basically to copy JRebel :D [06:40]
makara1 for a moment I was being serious. What difference is there between a computer with java code files, and a virtual machine with bytecode files? [06:45]
makara1 Maldivia: no, i removed the package at the beginning [06:46]
[twisti] makara1: i know youre trying to say something with that comparison, but it just makes no sense, so maybe try to say what youre actually trying to say [06:47]
[twisti] obviously, there are thousands, likely hundreds of thousands of differences between a computer with java files and a vm [06:47]
Maldivia makara1: say you have this class compiled from this source: "package foo; class Bar {}" -- this CANNOT be reloaded with this source code: "class Bar {}" [06:48]
led1 [led1!~Thunderbi@] has joined ##java [06:48]
[twisti] Maldivia: he removed the package in the beginning. hes trying to reload a class with no package with another class with no package [06:49]
makara1 Maldivia: I get that! I just removed the package from the BEGINNING [06:49]
Maldivia makara1: ahh ok -- I read "in the beginning" as "in the beginning of the file" :D [06:56]
makara1 pha! [06:56]
Maldivia makara1: also, remember -- you cannot reload a while-true loop :D [06:57]
Maldivia makara1: and active method is not reloaded, until it is entered again -- same applies with hotswap in your IDE, which is why it will sometimes suggest you to pop the current method, to run the new body [06:58]
Maldivia makara1: as in while (true) { println("foo"); } -- if you try to reload that to while (true) { println("bar"); } -- nothing will happen; but ```main() { while (true) { print(); } } void print() { println("foo"); }``` to ```main() { while (true) { print(); } } void print() { println("bar "); }``` -- here you will see the changes [07:00]
dekenevs [dekenevs!~dekenevs@] has joined ##java [07:01]
makara1 i cant grok how hotswapping a class isn't going to break my whole application [07:01]
Maldivia makara1: well, if you reload with the wrong things, it can :D [07:02]
Maldivia makara1: reload a method, add System.exit(-1); -- boom :D [07:06]
Maldivia makara1: "i cant grok how hotswapping a class isn't going to break my whole application" -- why? what do you think can go wrong? [07:11]
ge0rgios [ge0rgios!~george@unaffiliated/anaphaxeton] has joined ##java [07:16]
computeiro [computeiro!~Wender@] has joined ##java [07:21]
makara1 Maldivia: i don't know about jvm internals so Im in the dark. I barely understand java [07:23]
Maldivia makara1: well, feel free to ask [07:31]
chewb why i cant add row to database in intelij, if i also am during debugging application? [07:40]
Maldivia chewb: sounds like something to ask JetBrains about :D [07:43]
mbooth chewb: Try #idea-users [07:44]
chewb this isnt problem, i think i know why its so, but i thought there is good explanation [07:45]
yawkat whats stopping you [07:46]
makara1 Maldivia: its not my domain, im a devops trying to help devs debug easier. But we can't get even a basic example of DCEVM hotswapping. So, for another day [07:46]
mbooth makara1: Why not get the actual devs to ask us in here then? [07:47]
mbooth Instead of playing a game of chinese whispers [07:47]
makara1 they're all juniors, and they don't like consoles and typing [07:48]
Peste_Bubonica [Peste_Bubonica!~Peste_Bub@unaffiliated/peste-bubonica/x-4612396] has joined ##java [07:48]
Maldivia if they are all juniors, perhaps adding complexity of class reloading isn't the right thing :D [07:48]
mbooth Not sure what consoles has to do with it... Plenty of graphical IRC clients knocking around [07:49]
ge0rgios [ge0rgios!~george@unaffiliated/anaphaxeton] has joined ##java [07:50]
makara1 Maldivia: i can't get the basic thing working though, as I explained above. I thought its doable [07:50]
mbooth Also, having all juniors and no seniors around to mentor the juniors sounds like a terrible way to run an engineering department... :-/ [07:51]
Maldivia makara1: did you try what I mentioned, with not changing the loop it self, but call a method from the loop and change that [07:51]
makara1 Maldivia: I don't want to guess. I want to know what to expect. There are too many things that can go wrong [07:51]
Maldivia makara1: well, this is never something you should run in production :D [07:52]
makara1 just getting the command line arguments right is a battle [07:52]
Maldivia give them JRebel, and it's just an IDE plugin, and it adds the correct arguments :D [07:52]
mbooth Maldivia++ [07:53]
mbooth maldivia has a karma level of 321, mbooth [07:53]
makara1 for example, -XX:HotswapAgent=core,autoHotswap=true,extraClasspath=%classPath% [07:53]
makara1 why not make autoHotswap the default for any classpaths. I only found out later I need to setup the extraClasspath [07:54]
makara1 now I wonder if it will work with JAR files, a hierarchical directory of JAR files, only class files, etc. There's no example [07:54]
mbooth And I still don't know why you aren't asking the authors of this niche JDK for tech support... [07:54]
mbooth Meanwhile millions of Java devs do code hotswap every day with vanilla certified OpenJDKs, many probably without even knowing it because the IDE just handles it. [07:55]
mbooth shrugs [07:55]
makara1 mbooth: we are still at the level of manually editing .classpath files [07:56]
Maldivia wtf [07:56]
Maldivia [07:56]
mbooth Wut? [07:56]
Maldivia maven [07:56]
Maldivia Maven is a software management tool that can compile, test, package, and deploy your project, with plugins for everything you can think of. See and ; also see ~build tools for more options. [07:56]
Maldivia Do NOT rely on Eclipse as your build environment! [07:56]
mbooth NOBODY should be manually editing .classpath files [07:57]
Maldivia you guys are fuuuuucked [07:57]
Maldivia (no offense mbooth) [07:57]
mbooth Maldivia: Why would I be offended? :-D [07:57]
mbooth It's makara1 who's fuuuuucked [07:58]
mbooth (Enough Us?) [07:58]
bolovanos_ [bolovanos_!~bolovanos@unaffiliated/bolovanos] has joined ##java [07:58]
mbooth makara1: Easy fix, just fucking hire a senior dev to short shit out :-) [07:59]
makara1 they won't join, they'll fight with management, embarress the founders, leave after complicating things, take people with them, and we can't afford seniors [08:01]
mbooth Sounds like the company is on the way to insolvency then. The other easy fix is find another job. [08:02]
makara1 we're getting away with murder and everyone knows it. But I like chaos [08:03]
_lucifer even a junior dev in right mind wouldn't be using .classpath files. [08:03]
mbooth _lucifer: Annoyingly schools churn out graduates who have no exposure to build tools or even source control. If makara1's firm can't justify even hiring *one* senior, chances are they pay juniors too little to get even compentent grads [08:06]
mbooth My advice: GET OUT NOW! [08:06]
_lucifer indeed, that seems to be the case! [08:06]
_lucifer telling your devs to use a build tool would be help enough, no need to bother with hotswapping. [08:07]
mbooth There's thousands of jobs (all remote even, these days!) No excuse to not be at least looking. [08:07]
makara1 well, Im a senior, but I don't use an IDE so I can't help them. Still, im working on that classpath thing, but we have a tonne of custom shit I need to get through. If we maintained one version of our product it wouldn't be such an issue, but branch switching massive repo messes up blah blah blah [08:08]
makara1 we don't version our projects, just redeploy them, so .m2/repository is a mix of artefacts of different versions of the same product [08:09]
mbooth vomits [08:09]
_lucifer all set up for an impending disaster! [08:09]
mbooth Hence my advice ;-) [08:10]
makara1 at the end of our 500 project maven reactor is are 2 nail-biting ant builds, and I won't even go into the escrow build! [08:10]
ejjfunky wow ... [08:10]
mbooth Oh only 500 project, so medium sized [08:10]
Maldivia is keeping silent... we have a perl script included... [08:11]
mbooth I mean, I'm hearing nothing insurmountable that a senior dev couldn't handle [08:11]
makara1 they didn't know about maven-version-plugin so thought they had to update all the version tags [08:11]
md_5 [md_5!~md_5@mcdevs/trusted/md-5] has joined ##java [08:12]
ejjfunky why no versioning? Sounds like a source of problems there. [08:12]
makara1 all unit tests were turned off [08:12]
makara1 funky non-utf8 encoding all over the repo [08:12]
makara1 delphi projects still required [08:12]
dreamreal makara1: ... oh man. That sounds like you're totally boned. [08:12]
_lucifer at this point, i am inclined to believe you are a troll [08:13]
makara1 custom c JNI [08:13]
ejjfunky non-utf8 encoding ... heh (YIKES) [08:13]
makara1 batch files everywhere [08:13]
dreamreal okay, cool, get a blog? [08:13]
MrFlibble [MrFlibble!Rimmer@] has joined ##java [08:14]
dreamreal make it anonymous so people won't associate your project with your company, because nobody shoudl trust your project and that could affect other employees who might care? [08:14]
acidjnk_new2 [acidjnk_new2!] has joined ##java [08:14]
makara1 nobody cares [08:15]
mbooth dreamreal: No, please don't make it anonymous, I want to know from which companies I should socially distance [08:15]
dreamreal makara1: *shrug* okay, so what company is this? [08:15]
makara1 you' [08:15]
makara1 never heard of us and you never will [08:15]
dreamreal How do you know? [08:16]
dreamreal I mean, that statement is false on its surface, since I'm hearing about you RIGHT NOW [08:16]
mbooth I mean the second part is likely true because it sounds like they are going down the pan [08:16]
dreamreal mbooth: untrue. ^^^^ [08:16]
mbooth They can't afford a jrebel license, never mind one single senior person :-) [08:17]
dreamreal "You will never hear about this thing you are hearing about right now." <-- um [08:17]
ejjfunky makara1, if you have a good blender, blend everything up and serve it up as a java smoothie. it sounds like it's already a complete meal for any programmers to gulp it down. :D [08:17]
dreamreal mbooth: chances are there's no political will to buy a jrebel license [08:17]
Maldivia mbooth: to be fair, a JR license is a bit expensive :D [08:18]
makara1 there's no confidence that we'd be able to make use of it [08:18]
Maldivia that's what trials are for :D [08:18]
mbooth Instead they must piss away makara1's time on a fool's errand -- that's *bound* to be cheaper, right? ;-) [08:18]
dreamreal well, get a blog, because if you don't care, I don't see why we should [08:18]
ranran8888 [ranran8888!6d40b154@gateway/web/cgi-irc/] has joined ##java [08:19]
makara1 i meant nobody outside the company [08:19]
dreamreal not being in the company, I apparently don't care, by your own declaration [08:20]
Maldivia mbooth: Ok, if you consider all the expenses per day for a devops guy, then JR license costs is equivalent to like 1-2 days work :D [08:20]
dreamreal If you're going to tell me I don't care, I don't see why I shouldn't believe you, unless you're a liar, and if you're a liar, I don't care [08:20]
zeden [zeden!~user@unaffiliated/zeden] has joined ##java [08:21]
dreamreal so this is a win for me all around: shut up, get a blog [08:21]
dreamreal move along [08:21]
paddyez [paddyez!~Patrick-E@wikipedia/paddyez] has joined ##java [08:26]
fly_agaric [fly_agaric!5e88077a@] has joined ##java [08:27]
hussam [hussam!~hussam@unaffiliated/hussam] has joined ##java [08:28]
TimeTrap [TimeTrap!~TimeTrap@2601:44:c280:def:e977:44b9:baad:a0d1] has joined ##java [08:30]
fly_agaric hello guys, i have a question maybe some of you might be able to answer it. i upgraded a tomcat from a win server 2003 to a windows server 2019 and now some oracle queries wont run ORA-01843; not a valid moth. i also saw that my application or tomcat or java or something else sets NLS_LANGUAGE = 'American' where the tomcat or something else on the [08:30]
fly_agaric 2003 server sets it to german. do you know where to set NLS Language parameters? is it tomcat java or in source code of the jsp files? [08:30]
_lucifer tech support [08:31]
_lucifer Hello, ##java is not a technical support channel for your Java apps or virtual machines; it's a development channel for enthusiasts to discuss programming with the Java language. Please ask the vendor of your software for support if you're having trouble with it. [08:31]
fly_agaric the vendor is not here anymore [08:31]
fly_agaric cant ask him [08:31]
fly_agaric it was a self created java web page 20 years ago from a pseudo developer which is not in the company anymore [08:32]
dreamreal "not a valid moth" should be handled by not sending butterflies instead [08:33]
dreamreal send a real moth to a moth's job, says me [08:33]
fly_agaric there is a real moth i checked with wireshark from old and new server and the query is identical just whats different is the NLS_LANG thing [08:34]
dreamreal databases rarely engage with insects. [08:34]
perrier-jouet [perrier-jouet!] has joined ##java [08:36]
fly_agaric the word america is magically replaced with germany on the w2k3 server [08:36]
Maldivia fly_agaric: 1 google query, let me to -- "Operating system-dependent, derived from the NLS_LANG environment variable " [08:37]
Maldivia fly_agaric: and your vendor is Oracle in this case, you have an issue with their database, there is notthing Java in this [08:37]
EgonX [EgonX!] has joined ##java [08:37]
fly_agaric the env variable says: NLS_LANG=GERMAN_GERMANY.WE8MSWIN1252 [08:38]
Maldivia well, then start debugging what's wrong -- as said, we cannot help you here [08:38]
fly_agaric i also rebooted the w2k19 server [08:38]
ejjfunky does openjdk have the same problem? [08:38]
emanuele6 [emanuele6!] has joined ##java [08:45]
zeden [zeden!~user@unaffiliated/zeden] has joined ##java [08:46]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [08:49]
emanuele6 hello, do you guys know if it's possible to set X11 atoms for a swing JFrame or JDialog? I'm mainly interested in setting classname and instancename (WM_CLASS). [08:51]
freeone3000 It's at a lower level than what Swing deals with. Classname is set by the native peer component directly, so it's going to be Frame or Dialog, and classname is going to be unset. [08:57]
wedr [wedr!] has joined ##java [09:00]
freeone3000 errr, instance name is unset rather. [09:01]
fingo [fingo!~fingo@gateway/tor-sasl/fingo] has joined ##java [09:03]
SoF [SoF!~SoF@unaffiliated/skillyonfire] has joined ##java [09:06]
EgonX [EgonX!] has joined ##java [09:19]
aquahaze [aquahaze!~aquahaze@gateway/tor-sasl/aquahaze] has joined ##java [09:24]
emanuele6 I found a solution here , but, if i use it, the compiler says that i'm doing an "Illegal reflective access" and that "All illegal access operations will be denied in a future release". [09:25]
emanuele6 emanuele6's title: "183739 ? provide a non-generic WM_CLASS X property" [09:25]
cheeser that's a common warning. someday you're gonna want to stop doing that. [09:26]
emanuele6 is there no public api to do this cleanly? [09:26]
freeone3000 No, it is deliberately below the abstraction layer that Swing provides. [09:27]
emanuele6 ( [09:28]
emanuele6 welp, thank you guys [09:28]
oxum [oxum!~oxum@] has joined ##java [09:34]
plarsen [plarsen!~plarsen@redhat/jboss/pdpc.professional.plarsen] has joined ##java [09:37]
Peste_Bubonica [Peste_Bubonica!~Peste_Bub@unaffiliated/peste-bubonica/x-4612396] has joined ##java [09:38]
tnR parted the channel: "Closing Window" [09:50]
VideoGameEnjoyer [VideoGameEnjoyer!] has joined ##java [10:01]
Maldivia emanuele6 / cheeser: do not that that "future release" is already; it's java 16 [10:04]
Maldivia note* [10:04]
emanuele6 ah, i was using java se 15. [10:05]
emanuele6 i guess i should REALLY not use that solution then [10:06]
cheeser Maldivia: i'm staring down that release with morphia. which is why once 2.2 is out, i'm going to spend some time generating code to remove the reflection necessary [10:06]
TimeTrap [TimeTrap!~TimeTrap@2601:44:c280:def:e977:44b9:baad:a0d1] has joined ##java [10:09]
Maldivia cheeser: sounds fun :D [10:10]
cheeser i'm looking forward to it actually. [10:11]
Maldivia cheeser: ASM or ByteBuddy? [10:11]
cheeser a lot of stuff in there can be gen'd at build time. [10:11]
cheeser probably bytebuddy since it's already there but we'll see. gizmo might be an option, too. [10:12]
cheeser gizmo might be too specialized for what I need, though. [10:12]
Maldivia gizmo is the quarkus one, righT? [10:13]
cheeser yeah. ish. [10:13]
cheeser we use both asm and gizmo internally [10:13]
cheeser in morphia, i use bytebuddy to generate proxies for lazy references. [10:13]
Maldivia condy! :D [10:14]
cheeser but i'll need to build something that can do build time gen and also runtime gen for classes built externally [10:14]
wedr Finally put in a request for a senior dev to come and do a code-review on my work. If I don't do this, I'm going to go frenzy... [10:15]
Maldivia use reflection to introspect, then generate the classes [10:15]
cheeser or just load the byte[] for a class and then hand it off to asm/bytebuddy [10:15]
Maldivia yeah, if you have access :D [10:17]
code_zombie [code_zombie!~code_zomb@2605:a601:af8c:5000:9cd:f2a2:ec9f:a20f] has joined ##java [10:18]
Maldivia wedr: Review result: fail, Review comment: No! [10:19]
Maldivia D [10:19]
chewb can i do "cast(date as string) like '%2013%' in HQL or do i must use criteria api? [10:20]
wedr Maldivia, Well, the senior dev hasn't seen my mess of a Spring Security roles and privileges code. [10:20]
cheeser tias [10:21]
cheeser chewb, Try it and see. You learn much more by experimentation than by asking without having even tried. [10:21]
wedr I told him I have around 90 to 100 privileges, and he outright said, alright, philosophical code review [10:21]
wedr I did too many, basically [10:21]
fly_agaric my tomcat9 and java problem is solved. there were two java-options in the tomcat 9 service to set -Duser.language=de [10:21]
fly_agaric -Duser.region=AT [10:21]
fly_agaric now the oracle query runs without issues [10:21]
sa02irc [sa02irc!] has joined ##java [10:22]
oxum [oxum!~oxum@] has joined ##java [10:22]
Sgeo [Sgeo!] has joined ##java [10:24]
Maldivia wedr: that many privileges can be good... in theory; until you have to assign it to people; hopefully you have roles with default privileges assigned to them :D [10:26]
luxemboye [luxemboye!~luxemboye@gateway/tor-sasl/luxemboye] has joined ##java [10:26]
wedr They will, in theory. [10:26]
wedr anyway, devops love it, but senior dev felt there's something wrong with having that many privileges in an otherwise small web service. [10:27]
wedr Even I think what I did is overkill [10:27]
cheeser i agree with that senior dev. [10:32]
jamezp [jamezp!~jamezp@redhat/jboss/jamezp] has joined ##java [10:43]
wedr anyway, in the meantime, I've just been told to move on to a different ticket, and leave everything I've worked on in a separate branch. [10:45]
wedr time to tackle arbitrary JavaScript execution on the Java server web services... [10:46]
cheeser this is how branches die :) [10:46]
Diablo-D3 wedr: hah [10:53]
Diablo-D3 thats usually a sign of bad management [10:53]
wedr The company has a history of bad management in the past. [10:54]
wedr And we're hiring new folks to steer clear away from that. [10:55]
ejjfunky [ejjfunky!~ejjfunky2@] has joined ##java [10:55]
ebullient [ebullient!~ebullient@redhat/ebullient] has joined ##java [10:56]
hussam [hussam!~hussam@unaffiliated/hussam] has joined ##java [11:03]
mbooth The problem with bad management is that management types are seldom inclined to fire themselves :-/ [11:07]
mbooth Huh green party win at Gleadless Valley, that surprises me [11:08]
mbooth Oop, wrong channel [11:08]
Anticom [Anticom!~Anticom@] has joined ##java [11:08]
LKoen [LKoen!] has joined ##java [11:09]
chewb i was afraid "cast (date as string) like '%05%'" would not work in HQL, but it works on my machine, method gets called from one place, and if its implementation dependent or something it will break only if filtered by date, but it wont break rest of things [11:13]
chewb better than rewrting entire method to criteria [11:13]
cheeser that's the point of a standardized query language: it'll work everywhere. [11:15]
EgonX [EgonX!] has joined ##java [11:15]
recursiveNode [recursiveNode!] has joined ##java [11:20]
deavmi_ [deavmi_!~tbk@] has joined ##java [11:41]
ge0rgios [ge0rgios!~george@unaffiliated/anaphaxeton] has joined ##java [11:43]
gambl0re [gambl0re!~gambl0re@unaffiliated/gambl0re] has joined ##java [11:54]
hnOsmium0001 [hnOsmium0001!uid453710@gateway/web/] has joined ##java [11:55]
gelignite [gelignite!] has joined ##java [12:00]
Spawns_Carpeting [Spawns_Carpeting!] has joined ##java [12:01]
orbyt_ [orbyt_!~orbyt@] has joined ##java [12:11]
juuandyy [juuandyy!~juuandyy@] has joined ##java [12:15]
long4mud [long4mud!] has joined ##java [12:16]
whaley [whaley!] has joined ##java [12:18]
ge0rgios [ge0rgios!~george@unaffiliated/anaphaxeton] has joined ##java [12:32]
dev4449 [dev4449!8ff42f91@] has joined ##java [12:50]
Sheilong [Sheilong!uid293653@gateway/web/] has joined ##java [01:05]
dev4449 [dev4449!8ff42f91@] has joined ##java [01:07]
Peste_Bubonica [Peste_Bubonica!~Peste_Bub@unaffiliated/peste-bubonica/x-4612396] has joined ##java [01:17]
mindCrime_ [mindCrime_!] has joined ##java [01:23]
whaley [whaley!] has joined ##java [01:27]
paddyez [paddyez!~Patrick-E@wikipedia/paddyez] has joined ##java [01:28]
paddyez [paddyez!~Patrick-E@wikipedia/paddyez] has joined ##java [01:31]
momomo [momomo!] has joined ##java [01:32]
momomo just an exercise. if you use xml mappings for hibernate entities, how plain can your "entities" now be? can you do it all in xml? can the entities be pure java objects / no annotations? [01:33]
dreamreal yes [01:33]
momomo hmm .. interesting .. might solve my last issue on the java / hibernate / database problems [01:34]
Pajus [Pajus!~Pajus@unaffiliated/pajus] has joined ##java [01:34]
freeone3000 yeah, I've done this in practice, to annotate entities from external libraries for persistence. [01:34]
momomo is there a way to generate xml from a current annotation based entity structure ? [01:34]
dreamreal not sure. You should be able to generate the SCHEMA from annotations, then create XML from the schema... [01:35]
momomo dreamreal that might work! [01:35]
dreamreal Or do the mapping manually, of course, but I don't know of a tool to do it [01:35]
sa02irc [sa02irc!] has joined ##java [01:35]
dreamreal worth noting: billberk's book on EJB3 (ORA, I think?) actually does a straight walkthrough comparison of the annotations and XML for JPA [01:36]
momomo dreamreal what is his conclusion ? [01:36]
dreamreal He wasn't making a recommendation (although it would be "use annotations if you can," I think.) The point is that he would showthe annotation and the XML along with it [01:37]
mindCrime [mindCrime!] has joined ##java [01:37]
dreamreal unlike a lot of books in that sector, he WAS trying to more or less create a reference. In ... uh... some other authors' work, the mention of XML is made but it's an "advanced topic" because it's so verbose and most people need the annotations instead [01:38]
momomo i kind of find using the annotating entity based approach limiting due to redundancy issues ... like you can use embedded .. but then you have to access things with the object reference .. i would like to have some tables use established configuration and avoid redundancy .. however seems one either have to redundancy even the annotations .. or embed .. embedding is not pretty either. with xml ...... in theory i could [01:38]
momomo generate it .. and render another xml configuration into a third [01:38]
momomo an entity can extend another enitity but that is it [01:38]
momomo you can not annotate an interface method either [01:38]
momomo so a subclass can provide them [01:39]
momomo also would be ugly [01:39]
dreamreal sure [01:39]
dreamreal but you also have to consider what the NORMAL mechanism is [01:39]
momomo i don't know .. seems impossible to avoid redundancy with hibernate approach [01:39]
dreamreal and the annotations are fully sufficient for that [01:39]
dreamreal How so? [01:39]
dreamreal You can have superclasses as entities [01:39]
dreamreal and as embedded elements for tables. What construct are you looking for? [01:40]
momomo Basically the ability to define column / table structures, yet be able to get a pure entity access object [01:41]
momomo So for a Product and Price .. where price say has currency and value; [01:42]
momomo If you @Embedded Price price. you will get the currency and value columns in the Product table. However, you will still have to product.getPrice().getValue() to get the value .. [01:43]
momomo For this example, it is nothing, but there are more verbose examples than this, where you have already defined some structure, and you would like anyone to get into their table natively. [01:43]
dreamreal momomo: you don't have to do it that way [01:44]
dreamreal there are lots of options for that [01:44]
dreamreal look at how embeddable ids are done, for example [01:44]
dreamreal but at some point you're going to run into the object/RDMS impedance mismatch [01:45]
dreamreal a row is not an object, although it can be represented as one, and if you are trying to treat it as a projection you'll have to do so explicitly [01:45]
momomo I am not sure there are ways around this. Maybe if hiberante could then generate a new Entity java class that contains a purer representation of my table. [01:45]
dreamreal just mentioned projections... [01:46]
dreamreal boy do I have a book for you :) [01:46]
dreamreal (no, I do not, actually.) [01:46]
momomo which one? [01:46]
dreamreal nah, I'm more or less kidding around [01:47]
momomo I am not sure i understand what you mean by Projections [01:47]
dreamreal blinks [01:47]
momomo Projections.projectionList() ? [01:47]
dreamreal you can construct an object on the fly, using constructors and everything, from a hibernate query [01:47]
momomo from what class? [01:47]
dreamreal it can be an Object[] or an actual instance [01:47]
dreamreal Query [01:47]
dreamreal [01:48]
dreamreal dreamreal's title: "JPA/Hibernate Projections | Baeldung" [01:48]
momomo Yes, but do i have something that gives me the class? Taht can geenrate it ? [01:48]
dreamreal No, you'd have to build it if you didn't want the Object[] [01:48]
dreamreal but you CAN do that if you so desire [01:48]
dreamreal Personally, if my object model was of complexity N and I wanted it to be of M instead, I'd... adjust the object model to fit what I wanted, or adjust what I wanted to fit the object model. [01:50]
momomo Maybe if I generate the schema from sql, then perhaps i can generate annotation free java entity classes from the tables .. maybe that could be something .. seems like things could go wrong though [01:50]
momomo dreamreal yes, i am considering with perhaps accepting the redundancy over using embedded which is not pretty [01:50]
momomo i just hate redundancy [01:50]
Betal [Betal!~Betal@unaffiliated/betal] has joined ##java [01:51]
momomo but i guess once the system is up and running i could refactor away and redundancy declare the embedded stuff [01:51]
momomo entities are not edited much [01:51]
momomo once established [01:51]
dreamreal it's not really redundancy, though, just indirection through object composition [01:52]
dreamreal but whatever works for you [01:52]
momomo dreamreal when we use embedded we can get the columns in our new entity ... however, the issue is that access is now through this entity object .. i would have prefered it as you called a row representation object .. where one could simulate it if one was able to generate the entity back from the table. with java we can max extend one entity so that is kind of limiting. using embedded everywhere can also be. this is a big [01:54]
momomo issue in my life :( ... i think it is the last piece of the puzzle to be solved. [01:54]
dreamreal momomo: there's a way around that, too, like I said: look at how embedded ids work [01:55]
momomo hmm . i will! [01:55]
dreamreal it's kinda gross, I'd prefer not to bother, but if you want it, it's there [01:55]
hussam [hussam!~hussam@unaffiliated/hussam] has joined ##java [01:55]
momomo first article taught me little: [01:56]
momomo momomo's title: "Spring JPA @Embedded and @EmbeddedId | Baeldung" [01:56]
PacKetSlayer [PacKetSlayer!PacketSlay@hellomouse/member/packetslayer] has joined ##java [01:57]
fingo [fingo!~fingo@gateway/tor-sasl/fingo] has joined ##java [01:57]
momomo Not sure it is different from @Embedded [01:58]
jamezp [jamezp!~jamezp@redhat/jboss/jamezp] has joined ##java [01:59]
dreamreal shrugs. There are ways to combine multiple entities into single tables, multiple tables, and vice versa. It's all there, it just depends on what you want and how hard you want to swim against the stream. [02:00]
nurupo [nurupo!] has joined ##java [02:00]
Betal [Betal!~Betal@unaffiliated/betal] has joined ##java [02:06]
whaley [whaley!] has joined ##java [02:10]
kupad [kupad!] has joined ##java [02:10]
TimeTrap [TimeTrap!~TimeTrap@2601:44:c280:def:e977:44b9:baad:a0d1] has joined ##java [02:21]
Christofosho [Christofosho!~christofo@unaffiliated/christofosho] has joined ##java [02:24]
Peste_Bubonica [Peste_Bubonica!~Peste_Bub@unaffiliated/peste-bubonica/x-4612396] has joined ##java [02:32]
binarycreations [binarycreations!] has joined ##java [02:32]
KnownSyntax [KnownSyntax!sid233169@gateway/web/] has joined ##java [02:35]
hnOsmium0001 [hnOsmium0001!uid453710@gateway/web/] has joined ##java [02:35]
rann [rann!sid175221@gateway/web/] has joined ##java [02:36]
IUSR [IUSR!sid348938@pdpc/supporter/professional/iusr] has joined ##java [02:36]
stryek [stryek!uid332574@gateway/web/] has joined ##java [02:46]
Peste_Bubonica [Peste_Bubonica!~Peste_Bub@unaffiliated/peste-bubonica/x-4612396] has joined ##java [02:49]
CodeMouse92 [CodeMouse92!~JasonMc92@unaffiliated/codemouse] has joined ##java [02:53]
svm_invictvs [svm_invictvs!~svm_invic@unaffiliated/svminvictvs/x-938456] has joined ##java [02:56]
momomo i can probably use jooq to generate the java classes from tables, hmm .. [02:57]
dreamreal in which case you're not using hibernate, everyone wins [02:58]
LionBar_ [LionBar_!~l@gateway/tor-sasl/lionbar] has joined ##java [03:03]
wedr Finally, a long afternoon code review has finished.... [03:07]
wedr Senior dev is approving my work [03:07]
wedr sorry, cheeser [03:07]
momomo wedr let me see [03:07]
ernimril wedr, guess you should show it here and see how we take it down then? ;-) [03:07]
wedr 100+ privileges is indeed the way to go, [03:07]
wedr Well, I can't show you all of the privileges... [03:08]
wedr But I can give context, and say, yes, I'm the meticulous developer who went ahead and added @Secured with privileges / roles checking to every single endpoint, so now I have to do 264 unit integration tests. [03:09]
wedr Each endpoing checking CRUD operations, 1 privilege per operation, for 264 endpoints. [03:09]
wedr s/endpoing/endpoint [03:09]
wedr 264 * 4 = 1056 [03:10]
wedr realizes the horror. [03:10]
VideoGameEnjoyer [VideoGameEnjoyer!] has joined ##java [03:15]
freeone3000 I wonder if the senior dev approved the design in order to teach you a lesson. [03:18]
orbyt_ [orbyt_!~orbyt@] has joined ##java [03:18]
RazielZ [RazielZ!~Raziel@unaffiliated/raziel] has joined ##java [03:19]
makara1 [makara1!~sol@] has joined ##java [03:22]
VideoGameEnjoyer [VideoGameEnjoyer!] has joined ##java [03:24]
Diablo-D3 [03:40]
Diablo-D3 Diablo-D3's title: "Why Java's Records Are Better* Than Lombok's @Data and Kotlin's Data Classes // nipafx" [03:40]
hussam [hussam!~hussam@unaffiliated/hussam] has joined ##java [03:48]
dreamreal but... records have... different semantics [03:50]
dreamreal @Data isn't the same as a record [03:50]
hiredman [hiredman!] has joined ##java [03:52]
wedr [wedr!] has joined ##java [03:55]
sonOfRa dreamreal: well yeah obviously they have *better* semantics! [03:57]
sonOfRa Because they're better! [03:57]
dekeract [dekeract!fschmatrix@gateway/shell/] has joined ##java [04:06]
AmVarPG [AmVarPG!] has joined ##java [04:09]
dpl [dpl!] has joined ##java [04:12]
ADG1089 [ADG1089!~aditya@] has joined ##java [04:13]
Burkuf [Burkuf!~AnCELASTR@] has joined ##java [04:26]
Burkuf How do you guys answer the question: Why does my request took 5 seconds to execute? Is there some "safe-to-use" "low-overhead" profiler for spring suitable for production use? Or how do you go about answering those questions? [04:27]
dreamreal profilers [04:27]
dreamreal A profiler is a tool to find performance bottlenecks. VisualVM is a free profiler available from (included with OpenJDK up to Java 8); JProfiler and YourKit cost money but usually have free eval periods or time-limited betas. Java Flight Recorder and Java Mission Control were recently opened sourced under OpenJDK. [04:27]
Burkuf dreamreal: Are those suitable to be used continuosly in a production environment? [04:28]
dreamreal for that you probably want something like dynatrace instead [04:28]
ernimril Burkuf, start by looking at top or task manager and see if you spend time in java or in db or in io [04:29]
Burkuf ernimril: I don't have direct access to the servers... I can deploy code, generic logs, generate telemetry, maybe something else too.... [04:30]
ernimril Burkuf, also, how big is your production? if your server is only lightly loaded then having a profiler attached (without profiling) will be fine and then you can profile a short time without disturbing too much [04:30]
Burkuf ernimril: I'm hoping that this is something that is always on, so we can use it for issues reported in the past too [04:30]
ernimril jfr [04:31]
ernimril Java Flight Recorder (JFR) is a tool for collecting diagnostic and profiling data about a running Java application: [04:31]
dreamreal note also that this is in fact what dynatrace was designed for [04:34]
justBull [justBull!~justache@unaffiliated/justache] has joined ##java [04:36]
justBull [justBull!~justache@unaffiliated/justache] has joined ##java [04:47]
binarycreations [binarycreations!] has joined ##java [04:48]
CodeMouse92 [CodeMouse92!~JasonMc92@unaffiliated/codemouse] has joined ##java [04:55]
acidjnk_new2 [acidjnk_new2!] has joined ##java [05:03]
Burkuf I'll look into those two. Thank you guys :) [05:04]
haijuno [haijuno!~haijuno@2600:1700:3db0:2540:508d:7048:5676:1b7e] has joined ##java [05:09]
SirMangler [SirMangler!] has joined ##java [05:30]
paddyez [paddyez!~Patrick-E@wikipedia/paddyez] has joined ##java [05:47]
katana [katana!~katana@unaffiliated/katana] has joined ##java [06:08]
davidv7_ [davidv7_!] has joined ##java [06:19]
recursiveNode [recursiveNode!] has joined ##java [06:25]
fairuz [fairuz!~fairuz@unaffiliated/fairuz] has joined ##java [06:33]
CodeMouse92 [CodeMouse92!~JasonMc92@unaffiliated/codemouse] has joined ##java [06:36]
ranran8888 [ranran8888!6d40b154@gateway/web/cgi-irc/] has joined ##java [06:45]
ge0rgios [ge0rgios!~george@unaffiliated/anaphaxeton] has joined ##java [06:47]
VideoGameEnjoyer [VideoGameEnjoyer!] has joined ##java [06:49]
mindCrime [mindCrime!] has joined ##java [06:50]
ranran8888 [ranran8888!6d40b154@gateway/web/cgi-irc/] has joined ##java [06:58]
ADG1089 [ADG1089!~aditya@] has joined ##java [07:11]
orbyt_ [orbyt_!~orbyt@] has joined ##java [07:13]
spacefrog [spacefrog!uid388336@gateway/web/] has joined ##java [07:16]
spacefrog are Elliptic Curve keys supported by java key stores? [07:18]
ChaiTRex [ChaiTRex!~ChaiTRex@gateway/tor-sasl/chaitrex] has joined ##java [07:48]
perrier-jouet [perrier-jouet!] has joined ##java [07:48]
rorx [rorx!] has joined ##java [08:13]
AcTiVaTe [AcTiVaTe!] has joined ##java [08:16]
PyR3X spacefrog: yes... keyalg EC [08:27]
Goplat [Goplat!~Goplat@reactos/developer/Goplat] has joined ##java [08:37]
retroguy8000 [retroguy8000!~retroguy8@2804:14d:7683:84d9:fc03:afa6:26d0:1eb2] has joined ##java [08:43]
KidBeta [KidBeta!~Kidbeta@hpavc/kidbeta] has joined ##java [08:57]
zulutango [zulutango!] has joined ##java [09:12]
Feuermagier [Feuermagier!~Feuermagi@] has joined ##java [09:23]
tang^ [tang^!~tang^@2604:3d09:47c:f970:798b:2927:6ad:25a7] has joined ##java [10:16]
Feuermagier [Feuermagier!~Feuermagi@2a02:2488:4211:3400:7285:c2ff:fe22:172e] has joined ##java [10:19]
Feuermagier [Feuermagier!~Feuermagi@] has joined ##java [10:22]
p[a]ddy [p[a]ddy!~Patrick-E@wikipedia/paddyez] has joined ##java [10:41]
mindCrime [mindCrime!] has joined ##java [10:42]
KidBeta [KidBeta!~Kidbeta@hpavc/kidbeta] has joined ##java [10:55]
deavmi [deavmi!~tbk@2a04:5b81:2010::33] has joined ##java [10:59]
LionBar_ [LionBar_!~l@gateway/tor-sasl/lionbar] has joined ##java [11:06]
MrFlibble [MrFlibble!Rimmer@] has joined ##java [11:45]
VideoGameEnjoyer [VideoGameEnjoyer!] has joined ##java [11:52]
CustosLimen [CustosLimen!sid53872@gateway/web/] has joined ##java [11:53]