Info

Login

Channels

APIs

Credits

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

« 2019-10-14

2019-10-15

2019-10-16 »

Nick Message Date
juhwad__ [juhwad__!~jaziz@unaffiliated/jaziz] has joined ##java [12:02]
CuriousMind hmm ok [12:06]
CuriousMind This code is a servlet about cookies. I'm trying to retrieve the id and password from form. If it is user first time, create cookie. If it is not user first time, put existing cookie values in form [12:08]
CuriousMind cheeser makes sense? [12:08]
cheeser sure. as far as it goes. [12:14]
rruizt [rruizt!~rruizt@83-84-23-124.cable.dynamic.v4.ziggo.nl] has joined ##java [12:16]
sauvin [sauvin!sauvin@about/linux/staff/sauvin] has joined ##java [12:16]
CuriousMind cheeser, ok great. Are you now able to help me please? ;( [12:17]
cheeser doesn't work [12:17]
cheeser cheeser, doesn't work is useless. Tell us what it is, what you want it to do, and what it is doing. Consider putting some code and any errors on a pastebin. (use ~pastebin for suggestions) [12:17]
CuriousMind '=( [12:17]
bitwinery CuriousMind, storing passwords in cookies is not a recommended practice [12:17]
bitwinery fyi [12:17]
CuriousMind this is an assignment I am doing for school [12:18]
CuriousMind bitwinery we talked about that in class. It can also be encrypted right? [12:18]
bitwinery CuriousMind, best way is to not be there at all [12:18]
tassee [tassee!~tasse@55d4583f.access.ecotel.net] has joined ##java [12:18]
CuriousMind bitwinery I see I see [12:18]
CuriousMind I didn't know that [12:19]
CuriousMind passwords should be encrypted and stored in a database? [12:19]
CuriousMind im just asking for my personal knowledge [12:19]
bitwinery not even that [12:19]
CuriousMind oh [12:19]
CuriousMind where does this info go then? D: [12:19]
forgottenone [forgottenone!~forgotten@176.88.98.56] has joined ##java [12:19]
cheeser passwords should salted and hashed and then original forgotten [12:20]
bitwinery CuriousMind, you use some kind of hash [12:20]
bitwinery https://www.geeksforgeeks.org/store-password-database/ [12:20]
bitwinery but even then, you need to be careful [12:20]
CuriousMind hm I see [12:20]
CuriousMind ok, I'm going to try to make my code work. wish me luck =( [12:21]
TheBeastie [TheBeastie!~luis@dbj6jkyycfr3s--xk0pzt-3.rev.dnainternet.fi] has joined ##java [12:21]
bitwinery CuriousMind, also for further reference, you described what your code was attempting to do but you never described your problem (what was cheeser asking). What do you observe vs what did you expect? What did you try? [12:22]
CuriousMind oh ok im sorry [12:22]
CuriousMind ok so [12:22]
CuriousMind I don't know what I was expecting to be honest [12:22]
cheeser which is exactly what that factoid said. twice. [12:23]
CuriousMind I guess the html form [12:23]
bitwinery CuriousMind, maybe start at the output? What output do you get vs what were you expecting? [12:24]
CuriousMind Well, when I tried to access the webpage, I have an error [12:24]
VegetarianFalcon [VegetarianFalcon!uid258908@gateway/web/irccloud.com/x-efncbktuadkbswor] has joined ##java [12:24]
CuriousMind HTTP Status 500 - Cookie name may not be null or zero length [12:24]
bitwinery CuriousMind, you are gonna have to be way more descriptive than that. Put yourself in our shoes [12:24]
CuriousMind damn im sorry [12:24]
CuriousMind thinking [12:25]
bitwinery so what do you send to get that error? Any exception in the logs? [12:25]
CuriousMind hmmmm [12:25]
CuriousMind I don't think I sent anything to get that error [12:26]
CuriousMind exception in the logs? uhhh [12:26]
CuriousMind I guess I have to look at console right [12:26]
bitwinery some request to your server must be sent somehow to trigger that error [12:26]
CuriousMind yes it did, yes [12:27]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [12:27]
CuriousMind when I tried to access the webpage through chrome, the form didn't even show up [12:27]
CuriousMind that was what I was expecting, the form [12:27]
CuriousMind i hope that i am making sense '=D [12:27]
bitwinery yeah [12:27]
CuriousMind phew ok [12:27]
CuriousMind what more info do you need, im trying my best to describe this [12:28]
bitwinery Next steps would be to log your parameters when you enter that request [12:28]
bitwinery so you have a better understanding of your inputs [12:28]
bitwinery and how they interact with your logic [12:28]
AMcBain [AMcBain!~Art@96-41-210-84.dhcp.elbg.wa.charter.com] has joined ##java [12:29]
bitwinery you can also use the chrome developer tools to see the actual network request done to your service [12:29]
CuriousMind hmmm [12:29]
CuriousMind ok i understand log my parameters. I have to use out.print statements to show the data I get from form using .getParameter [12:30]
CuriousMind chrome developer tools, hmm [12:31]
CuriousMind the chrome developer tools is when you right click and select "inspect" right [12:32]
bitwinery you can also violently System.out.println the heck of it [12:32]
CuriousMind when you say violently, that means to force an output? [12:32]
bitwinery I mean it as a hacky way [12:33]
CuriousMind ah ok [12:33]
bitwinery a proper way would be to use a logging framework such as Apache Log4j2. But I don't think you are there yet [12:33]
CuriousMind im not lol [12:33]
CuriousMind i hear you though [12:33]
bitwinery no worry, one step at a time. Just bookmark it for when you have some time later [12:34]
CuriousMind sure [12:34]
CuriousMind thank you for helping me [12:34]
CuriousMind im going to try to get output [12:34]
djhworld [djhworld!~djhworld@90.252.65.89] has joined ##java [12:40]
jaziz [jaziz!~jaziz@unaffiliated/jaziz] has joined ##java [12:41]
nfd9001 [nfd9001!~nfd9001@c-67-183-33-240.hsd1.wa.comcast.net] has joined ##java [12:43]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [12:45]
CombatVet [CombatVet!~c4@gateway/tor-sasl/combatvet] has joined ##java [01:00]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [01:08]
g00s [g00s!~g00s@unaffiliated/g00s] has joined ##java [01:23]
dendazen [dendazen!~dendazen@pool-72-76-93-243.nwrknj.fios.verizon.net] has joined ##java [01:32]
palasso [palasso!~palasso@unaffiliated/palasso] has joined ##java [01:36]
ogradyd [ogradyd!~Thunderbi@2a02:8070:88bf:9df0::f59] has joined ##java [01:37]
SuperTyp [SuperTyp!~SuperTyp@15.5.3.213.static.wline.lns.sme.cust.swisscom.ch] has joined ##java [01:39]
ham [ham!~z0mbie@unaffiliated/ragnarokkr] has joined ##java [01:41]
hypc1 [hypc1!~Thunderbi@113.233.221.152] has joined ##java [01:42]
atrament666 [atrament666!~atrament@cpc95006-newt38-2-0-cust73.19-3.cable.virginm.net] has joined ##java [01:47]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [01:48]
puppy_za [puppy_za!uid277586@gateway/web/irccloud.com/x-lchqvsvviwravsvj] has joined ##java [01:53]
forgottenone [forgottenone!~forgotten@176.88.98.56] has joined ##java [01:57]
greenfructose [greenfructose!~greenfruc@192.197.123.235] has joined ##java [02:01]
anirban [anirban!~anirban@unaffiliated/apostasy] has joined ##java [02:03]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [02:06]
puppy_za lol [02:06]
cnsunyou1 [cnsunyou1!~cnsunyour@124.64.32.199] has joined ##java [02:14]
atrament666 [atrament666!~atrament@cpc95006-newt38-2-0-cust73.19-3.cable.virginm.net] has joined ##java [02:19]
hypc [hypc!~Thunderbi@113.233.221.152] has joined ##java [02:20]
g00s [g00s!~g00s@unaffiliated/g00s] has joined ##java [02:25]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [02:28]
Tichodroma [Tichodroma!~lutz@fsf/member/Tichodroma] has joined ##java [02:34]
moeng00 [moeng00!~moeng@2001:41d0:1:ff97::1] has joined ##java [02:36]
Matthijs [Matthijs!~quassel@unaffiliated/matthijs] has joined ##java [02:44]
progart [progart!~kamee@5.77.160.44] has joined ##java [02:48]
manualcrank [manualcrank!~manualcra@bras-base-mtrlpq2718w-grc-09-70-24-226-18.dsl.bell.ca] has joined ##java [02:50]
KidBeta [KidBeta!~Kidbeta@hpavc/kidbeta] has joined ##java [02:57]
bnyio [bnyio!~bnyio@alcatraz.open-xchange.com] has joined ##java [03:01]
[twisti] [[twisti]!~twisti@toadwater.com] has joined ##java [03:03]
sdu [sdu!d4fb6b53@givos1.ath.forthnet.gr] has joined ##java [03:07]
acidjnk_new2 [acidjnk_new2!~acid@200116b867917600f097a18cc69bb22e.dip.versatel-1u1.de] has joined ##java [03:07]
hypc1 [hypc1!~Thunderbi@113.233.221.152] has joined ##java [03:07]
rafex [rafex!~rafex@fixed-189-203-28-241.totalplay.net] has joined ##java [03:11]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [03:11]
Chuguniy [Chuguniy!~Chuguniy@80.232.218.96] has joined ##java [03:20]
ma1uta [ma1uta!~ma1uta@91.92.136.128] has joined ##java [03:22]
VegetarianFalcon [VegetarianFalcon!uid258908@gateway/web/irccloud.com/x-ieuravwcayobbshs] has joined ##java [03:26]
tachoknight_ [tachoknight_!~tachoknig@205.178.20.7] has joined ##java [03:28]
twodee23 [twodee23!~johndoe@117.198.102.130] has joined ##java [03:38]
hypc1 [hypc1!~Thunderbi@113.233.221.152] has joined ##java [03:53]
rafex [rafex!~rafex@fixed-189-203-28-241.totalplay.net] has joined ##java [03:53]
algopro [algopro!~algopro@217.146.82.189] has joined ##java [03:54]
nfd9001 [nfd9001!~nfd9001@c-67-183-33-240.hsd1.wa.comcast.net] has joined ##java [04:02]
esro [esro!~esro@b00001.krakowskiinternet.pl] has joined ##java [04:05]
enoq [enoq!~textual@212-186-142-118.static.upcbusiness.at] has joined ##java [04:07]
bf_ [bf_!~bf_@ip5f5bcf7d.dynamic.kabel-deutschland.de] has joined ##java [04:25]
nfd9001 [nfd9001!~nfd9001@c-67-183-33-240.hsd1.wa.comcast.net] has joined ##java [04:27]
hypc1 [hypc1!~Thunderbi@113.233.221.152] has joined ##java [04:38]
pikapika [pikapika!~pikapika@pika.powered.by.lunarbnc.net] has joined ##java [04:38]
nfd [nfd!~nfd9001@c-67-183-33-240.hsd1.wa.comcast.net] has joined ##java [04:38]
marklite [marklite!~marklite@marklite.powered.by.lunarbnc.net] has joined ##java [04:39]
marklite [marklite!~marklite@marklite.powered.by.lunarbnc.net] has joined ##java [04:47]
algopro [algopro!~algopro@2a01cb0400ac18000cd7bf94a53eac40.ipv6.abo.wanadoo.fr] has joined ##java [04:51]
nfd9001 [nfd9001!~nfd9001@c-67-183-33-240.hsd1.wa.comcast.net] has joined ##java [04:51]
Anthaas [Anthaas!~Anthaas@unaffiliated/anthaas] has joined ##java [04:52]
rruizt [rruizt!~rruizt@83-84-23-124.cable.dynamic.v4.ziggo.nl] has joined ##java [05:02]
nfd9001 [nfd9001!~nfd9001@c-67-183-33-240.hsd1.wa.comcast.net] has joined ##java [05:05]
Gazooo [Gazooo!~Gazooo@142.196.183.136] has joined ##java [05:07]
tracks [tracks!~tracks@2600:1700:ade0:4400:b1a2:9ea4:5f01:aa3f] has joined ##java [05:09]
nokdoot [nokdoot!~nokdoot@211.205.207.39] has joined ##java [05:14]
pmart [pmart!4fb8fe76@gateway/web/cgi-irc/kiwiirc.com/ip.79.184.254.118] has joined ##java [05:14]
x6e69636f [x6e69636f!4d882978@gateway/web/cgi-irc/kiwiirc.com/ip.77.136.41.120] has joined ##java [05:18]
KeyJoo [KeyJoo!~KeyJoo@37.1.36.143] has joined ##java [05:18]
Lengsdorfer [Lengsdorfer!~Lengsdorf@unaffiliated/lengsdorfer] has joined ##java [05:21]
waz [waz!~waz@pdpc/supporter/active/waz] has joined ##java [05:25]
four_rivers [four_rivers!d925cde9@gateway/web/cgi-irc/kiwiirc.com/ip.217.37.205.233] has joined ##java [05:27]
Me4502 [Me4502!~quassel@unaffiliated/me4502] has joined ##java [05:28]
somazero [somazero!~somazero@2600:8805:100:112:9546:3f6c:9ac7:5b14] has joined ##java [05:30]
Bombe Hmm. project-core depends on project-test in scope test, project-test depends on project-core, and Maven can not handle that. [05:33]
progart [progart!~kamee@5.77.254.89] has joined ##java [05:33]
progart [progart!~kamee@5.77.254.89] has joined ##java [05:34]
[twisti] why on earth would core depend on test [05:35]
[twisti] thats insanity [05:35]
mbooth Bombe: Yeah, such a circular dep is a bad smell [05:36]
Bombe Apparently you both missed the ?in scope test? bit which is kind of important here. [05:36]
Bombe Of course I want to use all the test classes and helpers and shit for testing the core. [05:38]
Bombe I want every part of the project to use the stuff from test for testing. [05:39]
Bombe That?s kind of the reason for project-test. [05:39]
mbooth Bombe: How is it not still a circular dep? [05:39]
Bombe And of course there?s a buttload of stuff in test that depends on API from core and other subprojects, like matchers for entities ?n stuff. [05:40]
Bombe mbooth, because it?s not core -> test -> core but core:test -> test -> core. [05:40]
Bombe IDEA can handle that perfectly fine, as can gradle. [05:40]
Bombe There?s really not an issue here, except for Maven. [05:40]
mbooth Bombe: ... and core:test is part of the core module, so really it is circular [05:41]
bbgic [bbgic!8dfffa7e@diamant.geo-zs.si] has joined ##java [05:41]
Bombe But it?s not. core:test is _not_ the same as core. [05:41]
mbooth Bombe: Different submodule altogether? [05:42]
mbooth Or test classes from same submodule? [05:42]
Bombe The latter. [05:42]
waz [waz!~waz@pdpc/supporter/active/waz] has joined ##java [05:43]
somazero_ [somazero_!~somazero@ip98-166-131-209.hr.hr.cox.net] has joined ##java [05:43]
dreamreal Bombe: you need three modules to do that properly, I thin [05:44]
Bombe The maven-compatible solution would be to introduce a third module, core-api or something. But that?s really ugly. [05:44]
Bombe Yeah. [05:45]
dreamreal four, really: parent, core-api, core-test, core [05:45]
mbooth Bombe: Okay. It's well known (I thought?) that maven cannot cannot handle such circular dep trees because it builds modules wholly before moving on (A, A:test, B, B:test -- you can't have interleaving of building artifact from different modules) [05:45]
troulouliou_div2 [troulouliou_div2!~troulouli@unaffiliated/troulouliou-div2/x-0271439] has joined ##java [05:45]
mbooth Bombe: So you'd have to refactor the code [05:45]
Bombe mbooth, for reasons of maven being a stupid piece of shit I have tried to avoid it but alas, I?m at work. :/ [05:45]
Bombe dreamreal, the parent was omitted for brevity. [05:46]
Bombe Already got that. [05:46]
mbooth Bombe: Right, so you can't just say "it's not circular!" because maven considers it *is* no matter what your opinion is ;-) [05:46]
Bombe mbooth, oh, I totally can because maven is stupid. :) [05:47]
Bombe Maven thinking it?s circular is the best proof of that! [05:47]
dreamreal Bombe: was just being complete [05:47]
dreamreal Bombe: you'd have that pattern regardless though [05:48]
mbooth The stupidity of maven is beside the point. When in Maven-land, you dance like a Maven. [05:48]
Bombe The problem I have with adding another module is that it would only contain stuff from core that?s also used in tests. :/ [05:48]
dreamreal why do you have test as a separate module? [05:49]
Bombe And whenever you extend the tests you suddenly might have to move stuff from core to api. [05:49]
Bombe dreamreal, because I have classes that I want to use in tests in more than one module. [05:49]
dreamreal right. So ... yeah, you're going to have a core-api and a core artifact, with one serving mostly as a transitive dependency for the other... although you wouldn't HAVE to use core in that case [05:50]
Bombe Extremely unsatisfying. :/ [05:50]
dreamreal shrugs [05:51]
adder [adder!~adder@gateway/tor-sasl/adder] has joined ##java [05:52]
bbgic Hello. I have a question about JAXB. [06:00]
bbgic My XML contains a tag <base2:link xsi:nil="true" nilReason="unpopulated"/> [06:01]
bbgic <link> tag is in XSD defined as <element name="link" nillable="true" maxOccurs="unbounded"> [06:01]
bbgic In Java code I have [06:02]
bbgic List<Link> LegislationCitation_LinkList = LegislationCitation.getLink(); [06:02]
bbgic which returns a List with length 1 [06:02]
bbgic but the 0th element is null [06:02]
surial bbgic: of course. [06:02]
surial bbgic: that's what your XLM says. [06:02]
bbgic But I wish to get nilReason="unpopulated" [06:02]
surial The primary problem is that you want that. [06:03]
surial bbgic: You have some XML that has overtones of structure defined by metadata, and JAXB will 'take 2 steps in one go' and will parse your XML for you _AND_ apply this metadata in order to build its structure. [06:03]
bbgic surial: I'm sorry but I don't understand what you are saying [06:07]
surial Okay, I'll dumb it down: You can't. [06:07]
surial bbgic: use something that isn't JAXB to read that. [06:08]
Jenetrix [Jenetrix!~Jen@jenetrix.io] has joined ##java [06:11]
bbgic surial: But I also need JAXB (the majority of code uses it). Do I need to reimplement everything or just add something that isn't JAXB in this/those cases ? [06:12]
surial Can you change the XML def and move that 'nilReason' to someplace else? [06:12]
bbgic surial: No, the XML def is as it is I'm afraid. [06:14]
Nicmavr [Nicmavr!~Nicmavr@unaffiliated/nicmavr] has joined ##java [06:14]
bf_ [bf_!~bf_@ip5f5bcf7d.dynamic.kabel-deutschland.de] has joined ##java [06:15]
surial bbgic: painful. [06:17]
surial bbgic: there is a small chance you can set up a custom 'deserializer' (not sure if that is the right terminology for JAXB) for this key and make a container object for this ('actual value' which would be null here, and 'nilReason' which would usually be null, except if it is present, and then it is that string). [06:18]
algopro [algopro!~algopro@217.146.82.142] has joined ##java [06:22]
bbgic surial: Can you give me an example of this or a hint what to search for, please ? [06:26]
marklite [marklite!~marklite@marklite.powered.by.lunarbnc.net] has joined ##java [06:30]
royal_screwup21 [royal_screwup21!89de72f2@gateway/web/cgi-irc/kiwiirc.com/ip.137.222.114.242] has joined ##java [06:32]
bbgic surial: I just got another idea. I think it is a long shot (my hypothesis is that you would have mentioned that if it were possible) but here goes. [06:38]
bbgic surial: Can I marshall the List<Link> LegislationCitation_LinkList into <base2:link xsi:nil="true" nilReason="unpopulated"/> and then use something else (dom?) to get the nilReason attribute ? [06:39]
Me4502 [Me4502!~quassel@unaffiliated/me4502] has joined ##java [06:50]
d1b [d1b!~db@linode.d1b.org] has joined ##java [06:51]
x256 [x256!~marc@x4d016856.dyn.telefonica.de] has joined ##java [06:51]
cnsunyou1 [cnsunyou1!~cnsunyour@114.244.178.125] has joined ##java [06:55]
Raging_Hog [Raging_Hog!~heikki@82-181-38-176.bb.dnainternet.fi] has joined ##java [07:03]
realtime [realtime!~realtime@unaffiliated/realtime] has joined ##java [07:04]
Peste_Bubonica [Peste_Bubonica!~Peste_Bub@unaffiliated/peste-bubonica/x-4612396] has joined ##java [07:06]
royal_screwup21 [royal_screwup21!89de72f2@gateway/web/cgi-irc/kiwiirc.com/ip.137.222.114.242] has joined ##java [07:08]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [07:08]
perrier-jouet [perrier-jouet!~perrier-j@modemcable012.251-130-66.mc.videotron.ca] has joined ##java [07:10]
realtime [realtime!realtime@gateway/vpn/privateinternetaccess/realtime] has joined ##java [07:12]
esro [esro!~esro@b00001.krakowskiinternet.pl] has joined ##java [07:12]
esro [esro!~esro@b00001.krakowskiinternet.pl] has joined ##java [07:14]
surial bbgic: I don't think you can do any of those things. However, I know what JAXB does and how it works, but I don't use it myself, so that kind of detail is.. hopefully something someone else with more on-hand JAXB experience would know :/ [07:14]
surial bbgic: once you have a List<Link> containing a single null entry, you've lost the game. The information is simply not there. There is no way whatsoever to go from there back to your nilReason. [07:15]
surial You're looking more for something like JaxbUtils.fetchAsRawNode(LegislationCitation, "link"); [07:15]
surial Also please try to adhere to the java conventions. weWriteVariableNamesLikeThis, NotLike_This. [07:16]
Cahaan [Cahaan!~Cahaan@109.133.183.154] has joined ##java [07:16]
dostoyevsky When would I choose H2 over say postgresql? [07:21]
surial dostoyevsky: H2 is in-process. [07:22]
surial dostoyevsky: meaning, you do not need to install ANYTHING. It's 100% portable to any VM. [07:22]
dostoyevsky surial: Ah [07:22]
hypc1 [hypc1!~Thunderbi@113.233.221.152] has joined ##java [07:23]
surial That's reason 1. Reason 2 is: H2 is a single-file-DB model; once you close the DB, you have a single .h2.mv file or whatsit (I don't recall the precise extension) and this is the whole DB, with all included. You can move it to another location and open it with another H2 and it'll work just the same. [07:23]
surial on the flipside, it's muuuch slower, has fewer features, and is far less robust than psql. It depends on what you need ;) [07:24]
bbgic surial: Thank you very much for your help and your note about taking the java conventions into account. [07:29]
Alchemical [Alchemical!~al@unaffiliated/alchemical] has joined ##java [07:31]
dreamreal surial: you actually have two files, BTW - mv.db and mv.trace - and as far as speed, it depends on data size [07:32]
tristianc [tristianc!~tristianc@pool-72-83-128-193.washdc.fios.verizon.net] has joined ##java [07:32]
markelite [markelite!~marklite@marklite.powered.by.lunarbnc.net] has joined ##java [07:32]
dreamreal for small databases, H2 *can be* faster than postgresql. For large datasets, there's no comparison: postgresql wins hands down [07:32]
surial dreamreal: The trace file isn't needed. [07:32]
surial It's basically the debug log. It is not made unless something goes wrong. [07:32]
dreamreal it isn't needed, no. [07:32]
dreamreal And it's created *in case* something goes wrong. [07:32]
surial but, yes, .mv.db. In ye olden times, it was called .h2.db and H2 can still read those. [07:32]
dreamreal dostoyevsky: worth noting: none of this changes anything about the decision to use h2 over postgresql. For production, long-lived data: postgresql is almost always better. [07:34]
dreamreal (I use H2 in production as an intermediate datastore in one app, and it does quite well. That same app also uses postgresql.) [07:34]
rruizt [rruizt!~rruizt@83-84-23-124.cable.dynamic.v4.ziggo.nl] has joined ##java [07:42]
dreamreal yawkat: last remaining issues are formatting of the output to make it palatable/reasonable, and merges. But it's working. :) [07:47]
zeden [zeden!~user@unaffiliated/zeden] has joined ##java [07:47]
yawkat \o/ [07:47]
dreamreal those urls are... uh... long [07:48]
dreamreal and the bit.ly integration works, but I also have to work out a good way to indicate which packages the bitly urls refer to, may be trivial but I JUST sat back down [07:48]
yawkat javadoc String [07:49]
yawkat yawkat: http://bit.ly/2Sgzh1r [JDK: java.lang.String] [07:49]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [07:50]
yawkat javadoc String.charAt(*) [07:50]
yawkat yawkat: http://bit.ly/2MjFHgy [JDK: java.lang.String#charAt(int)]; http://bit.ly/2VIBFkD [JDK: java.lang.CharSequence#charAt(int)]; http://bit.ly/2VIBFkD [JDK: java.lang.CharSequence#charAt(int)] [07:50]
yawkat imo the same would work [07:50]
yawkat the binding field should be fine [07:50]
dreamreal yeah, just haven't finished looking at it. Stupid cat decided she wanted to code too. [07:51]
ham [ham!~z0mbie@unaffiliated/ragnarokkr] has joined ##java [07:51]
yawkat dont call your-cat stupid! [07:51]
dreamreal she, uh, isn't especially bright [07:52]
KidBeta [KidBeta!~Kidbeta@hpavc/kidbeta] has joined ##java [07:52]
KidBeta_ [KidBeta_!~Kidbeta@hpavc/kidbeta] has joined ##java [07:54]
conan [conan!~conan@mdproctor.plus.com] has joined ##java [07:55]
rafex [rafex!~rafex@fixed-189-203-28-241.totalplay.net] has joined ##java [07:57]
cheeser d/9 [07:59]
[twisti] fucking prawns [08:05]
cheeser District 13? [08:06]
conan [conan!~conan@mdproctor.plus.com] has joined ##java [08:06]
[twisti] oh right, that was 13, not 9 [08:08]
[twisti] my bad [08:08]
cheeser one was about aliens and the other was parkour porn. [08:09]
cheeser i can't remember which was which. [08:09]
cheeser 9 was aliens. b13 was parkour. [08:10]
DTZUZO [DTZUZO!~DTZUZO@70.71.126.42] has joined ##java [08:12]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [08:15]
dostoyevsky Is there a good public linux+java11 docker image I should use or is it better to just create my own? [08:17]
four_rivers [four_rivers!d925cde9@gateway/web/cgi-irc/kiwiirc.com/ip.217.37.205.233] has joined ##java [08:18]
sonOfRa I like the alpine images as a base image. What are you trying to *do* with the docker image? [08:19]
sonOfRa Base image for you to make docker images of your software, or are you trying to use java from a docker container to develop software (don't do that) [08:19]
dostoyevsky sonOfRa: putting a jar into it... and then deploying it in k8s [08:20]
[twisti] there are plenty of good java docker images. i dont know about linux, do non-linux docker images even exist ? [08:20]
dostoyevsky I normally use images I created myself [08:20]
[twisti] that is ... thats pretty weird [08:20]
sonOfRa The alpine images are pretty slim if that's what you're looking for [08:20]
[twisti] are you just starting out with java ? [08:21]
sonOfRa https://hub.docker.com/_/openjdk is probably the biggest collection, https://github.com/docker-library/docs/blob/master/openjdk/README.md#supported-tags-and-respective-dockerfile-links has the full list of available tags (the list is too large for the dockerhub tag list, so it's external) [08:21]
sonOfRa sonOfRa's title: "docs/README.md at master docker-library/docs GitHub" [08:21]
dreamreal yawkat: PR issued :) [08:21]
DTZUZO [DTZUZO!~DTZUZO@S0106bcd165662a4d.vs.shawcable.net] has joined ##java [08:22]
dostoyevsky Ah, `openjdk:<version>-alpine' looks great [08:23]
sonOfRa Yep. If you're diving deep into libc functionality in your software (you very likely aren't) you *might* run into some issues because alpine is musl-based instead of glibc based. I haven't yet run into such issues in our stack. [08:24]
DTZUZO [DTZUZO!~DTZUZO@S0106bcd165662a4d.vs.shawcable.net] has joined ##java [08:37]
jamezp [jamezp!~jamezp@redhat/jboss/jamezp] has joined ##java [08:37]
stryek [stryek!uid332574@gateway/web/irccloud.com/x-wxezxrsgahxugjvb] has joined ##java [08:39]
DTZUZO [DTZUZO!~DTZUZO@S0106bcd165662a4d.vs.shawcable.net] has joined ##java [08:44]
sonOfRa [sonOfRa!sonOfRa@unaffiliated/sonofra] has joined ##java [08:50]
x256 gcr.io/distroless/java:11 is also nice to build really small (even smaller than alpine) images [08:52]
conan [conan!~conan@mdproctor.plus.com] has joined ##java [08:53]
hypc [hypc!~Thunderbi@113.233.221.152] has joined ##java [08:53]
DTZUZO [DTZUZO!~DTZUZO@S0106bcd165662a4d.vs.shawcable.net] has joined ##java [08:55]
conan [conan!~conan@mdproctor.plus.com] has joined ##java [08:58]
RecycleHero [RecycleHero!~alistar@ec2-3-123-158-1.eu-central-1.compute.amazonaws.com] has joined ##java [09:00]
RecycleHero hi java guys [09:00]
RecycleHero tring to install elasticsearch on gentoo and ran to some java config problems [09:00]
bbgic parted the channel: [09:01]
Tichodroma [Tichodroma!~lutz@fsf/member/Tichodroma] has joined ##java [09:01]
RecycleHero my $JAVA_HOME is diffrent than the result of java-config -g JAVA_HOME [09:01]
dreamreal tech support [09:01]
dreamreal 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. [09:01]
mbooth RecycleHero: If "java-config" is some gentoo-specific tool, you are in the wrong channel -- probably best to ask gentoo people about it :-) [09:02]
AcTiWoRk [AcTiWoRk!~activate@host-tdku8h.tnz1.zeelandnet.nl] has joined ##java [09:02]
progart [progart!~kamee@5.77.136.219] has joined ##java [09:03]
DTZUZO [DTZUZO!~DTZUZO@S0106bcd165662a4d.vs.shawcable.net] has joined ##java [09:03]
progart [progart!~kamee@5.77.136.219] has joined ##java [09:03]
rruizt [rruizt!~rruizt@83-84-23-124.cable.dynamic.v4.ziggo.nl] has joined ##java [09:05]
dendazen [dendazen!~dendazen@pool-72-76-93-243.nwrknj.fios.verizon.net] has joined ##java [09:05]
conan [conan!~conan@mdproctor.plus.com] has joined ##java [09:05]
NetGirl [NetGirl!~NetGirl@unaffiliated/netgirl] has joined ##java [09:09]
horribleprogram [horribleprogram!~horriblep@unaffiliated/nightcoder] has joined ##java [09:10]
horribleprogram wth is going on here [09:10]
horribleprogram var keyword [09:11]
realtime_ [realtime_!realtime@gateway/vpn/privateinternetaccess/realtime] has joined ##java [09:12]
dreamreal what about it [09:14]
realtime_ [realtime_!realtime@gateway/vpn/privateinternetaccess/realtime] has joined ##java [09:14]
realtime_ [realtime_!realtime@gateway/vpn/privateinternetaccess/realtime] has joined ##java [09:17]
waz [waz!~waz@pdpc/supporter/active/waz] has joined ##java [09:17]
realtime_ [realtime_!realtime@gateway/vpn/privateinternetaccess/realtime] has joined ##java [09:19]
yn [yn!~yano@freenode/staff-emeritus/yano] has joined ##java [09:21]
DTZUZO [DTZUZO!~DTZUZO@S0106bcd165662a4d.vs.shawcable.net] has joined ##java [09:27]
surial horribleprogram: it's a keyword. Introduced in Java10. It demands that the variable is initialized; it's syntax sugar for 'be whatever type the expression being assigned to it is'. It is NOT the pythonesque 'you can assign anything', i.e. var x = "hello"; x = 10; will not compile, as x is a String (because "hello" is an expression whose type is String). What else do you want to know? [09:28]
sbalmos it's magic. pure f'ing compiler magic. [09:28]
surial s/keyword/context-sensitive keyword. [09:28]
surial That bit really is pure fucking magic but it is somewhat unlikely to be why you are all 'what in the sam hill is going on heres?!?!????' about it. [09:28]
dreamreal thus the "what about it" which seems relevant [09:28]
surial dreamreal: Perhaps yes. I'm still impressed all there is to know about it to know what it is, fits in a single IRC send. [09:29]
surial It's not like that for most language features :P [09:29]
four_rivers var reminds me about pascal [09:30]
dreamreal ok [09:30]
dreamreal good to know [09:30]
Anthaas [Anthaas!~Anthaas@unaffiliated/anthaas] has joined ##java [09:34]
x256 I thought 'var' was a reserved type name, not a keyword 8not even a context-sensitive one). [09:34]
dreamreal it's changed. [09:35]
dreamreal ar [09:35]
dreamreal var [09:35]
dreamreal Since java 10, the Java compiler can infer that in "var foos = new ArrayList<Foo>();", "foos" is in fact an "ArrayList<Foo>". See https://blog.codefx.org/java/java-10-var-type-inference/ http://openjdk.java.net/projects/amber/LVTIstyle.html http://openjdk.java.net/jeps/286 [09:35]
HumanGeek [HumanGeek!~HumanG33k@62.147.242.8] has joined ##java [09:37]
HumanGeek [HumanGeek!~HumanG33k@62.147.242.8] has joined ##java [09:38]
steaktartaar Need some input here: I have a legacy Java 1.6 application that reads strings from XML files and then compiles them on-the-fly for... reasons. We're trying to set up a dev environment but the project refuses to work right. The compiler can't find a package referenced in the source read from XMl, even though the .class file exists and I can see it on the .getURLs() output of the classloader [09:38]
steaktartaar any ideas? [09:38]
dreamreal Do you have a stack trace? [09:38]
dreamreal and are you running this on 1.6 or a later version? [09:39]
steaktartaar No. The compilation is done in a library for which I have no sources; it consumes the exception and just returns a boolean with a string saying "package X does not exist" [09:39]
steaktartaar I am running it on 1.6 [09:39]
four_rivers can you decompile it [09:39]
dreamreal uhhhhh not really much we can do to help without more information, I'm afraid [09:40]
steaktartaar I was afraid of that [09:40]
dreamreal You're basically saying "something's wrong, I don't know what, can you help" <-- not accusing you of anything, but it's not a lot to go on [09:40]
four_rivers ah you still need to ask on the forums etc, someone will know [09:40]
dreamreal tech support [09:41]
dreamreal 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. [09:41]
steaktartaar I know it's not enough to go one, was just looking for some feedback, maybe an angle I hadn't tried yet [09:44]
four_rivers to me it looks like it neds correct version [09:45]
steaktartaar (I'd ask the vendor but they're long bankrupt) [09:45]
steaktartaar four_rivers: YOU GENIUS [09:46]
steaktartaar it was getting the compiler from the windows path [09:46]
steaktartaar 12 != 6 [09:46]
four_rivers well im happy you figured out [09:47]
four_rivers i was getting ready to paste you few links like this http://www.neshkov.com/dj.html [09:47]
four_rivers four_rivers's title: "DJ Java Decompiler - java disassembler decompiler and editor" [09:47]
indistylo [indistylo!~aruns_@49.207.48.54] has joined ##java [09:48]
mbooth windows-- [09:48]
mbooth windows has a karma level of -82, mbooth [09:48]
four_rivers yeah path had caused me fair grief back in the days [09:48]
dreamreal steaktartaar: heh. Note that my second question was "are you running this on 1.6..." [09:49]
horribleprogram surial: okay, try this on for size [09:51]
LSCody [LSCody!~textual@pool-98-116-99-175.nycmny.fios.verizon.net] has joined ##java [09:52]
horribleprogram surial: var b1 = Boolean.valueOf("true"); var b2 = Boolean.valueOf("false"); System.out.println(b1 || b2); [09:52]
surial there's nothing special about that. [09:52]
horribleprogram this should be a compiler error [09:52]
surial ... but why? [09:52]
horribleprogram Object || Object [09:52]
surial var has nothing to do with it. [09:52]
surial no. [09:52]
surial Boolean || Boolean. [09:52]
horribleprogram yes, operator overloading doesn't exist [09:52]
surial no. [09:53]
surial you're.. what the fuck are you on about? [09:53]
horribleprogram unboxing? [09:53]
surial okay, step back. forget var. [09:53]
surial just write the exact same code. except.. use Boolean instead of 'var'. [09:53]
surial and then you'll find it also just compiles fine. [09:53]
horribleprogram dude [09:53]
surial If you use an operator such that it would be a compiler error, except both sides can be unboxed and then it would NOT be a compiler error, then they get unboxed. [09:53]
horribleprogram Boolean.valueOf(String) returns a Boolean, not a boolean [09:53]
horribleprogram AHHH [09:53]
horribleprogram my bad [09:53]
horribleprogram haven't java'd in a long time [09:53]
horribleprogram I didn't remember that unboxing/boxing occurs when you use operator [09:54]
surial Integer a = 5, b= 10; if (a > b /* unboxing occurs here) { ... } [09:54]
horribleprogram s [09:54]
x256 Then don't try to find flaws in the java compiler perhaps :) [09:54]
surial you want what the fuck? [09:54]
horribleprogram surial: sorry, tyvm for the explanation [09:54]
surial try this on for size: [09:54]
surial Integer a = new Integer(5), b = new Integer(5); if (a != b) { System.out.println("What. The. Fuck???"); } [09:54]
mbooth horribleprogram: You'll need to be reminded of the existance of Javadocs then ;-) https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html#valueOf-boolean- [09:55]
surial mbooth: no, he got that part (valueOf returns capital-B-Boolean). [09:55]
horribleprogram mbooth: i know, it off by heart, Boolean.valueOf(String s) { return parseBoolean(s) ? TRUE : FALSE; } [09:55]
horribleprogram surial: ez [09:55]
horribleprogram surial: 5 == 5 [09:56]
surial horribleprogram: nope. [09:56]
horribleprogram surial: they are both unboxed [09:56]
mbooth surial: Sure, it's just something he could trivially look up but didn't, and hasn't java'd in a long time. I concluded he probably forgot about javadoc :-o [09:56]
surial horribleprogram: you should run it. [09:56]
surial horribleprogram: they are both NOT unboxed, and it WILL print. a is NOT equal to b... and yeah a and b are both 5. whaaa???? [09:56]
surial try to wrap your head around that :) [09:56]
horribleprogram wait [09:56]
surial mbooth: no, the confusion here is about how Boolean || Boolean is legal in java, and will unbox both. [09:56]
horribleprogram does Integer support Comparable<T> [09:56]
surial horribleprogram: yes, but that's not relevant here. [09:56]
horribleprogram kk [09:56]
horribleprogram then i have no fucken clue [09:56]
surial horribleprogram: BigInteger also supports Comparable<T> and nevertheless, BigInteger a = ONE, b = ONE; if (a > b) is a compiler error; as you said, java does not support operator overloading (and BigInteger does not auto-unbox to anything). [09:57]
surial horribleprogram: Object a = new Object(); b = new Object(); if (a != b) { /* this is legal java code; it compares the reference identity of a to the reference identity of b */ } [09:57]
surial get that bit? [09:57]
horribleprogram surial: OHHH [09:57]
horribleprogram I totally forgot [09:57]
horribleprogram reference equality [09:57]
horribleprogram objects are compared by reference [09:58]
surial tada. so if (Integer != Integer) is comparing reference equality, and whilst both iNteger objects contain the value 5, because I used new integer... [09:58]
surial And now even more fun: [09:58]
horribleprogram Integer a = new Integer(5); b = a; a == b ;) [09:58]
Rapture [Rapture!~textual@50-204-232-30-static.hfc.comcastbusiness.net] has joined ##java [09:58]
surial int X = 5; Integer a = Integer.valueOf(X), b = Integer.valueOf(X); if (a == b) { System.out.println("This will print"); } [09:58]
surial that code, if you compile and run it, does indeed print 'This will print'. [09:58]
surial now make X.. 260. And now it won't. [09:58]
horribleprogram da fuvk [09:59]
horribleprogram 1 q and i cn answer this: return value of Integer.valueOf(int) [10:00]
horribleprogram Integer, I'm assuming? [10:00]
horribleprogram you never know with these updatesa [10:00]
horribleprogram 260 and 5 are both integer literal [10:00]
horribleprogram s/literal/literals [10:01]
algopro [algopro!~algopro@217.146.82.245] has joined ##java [10:01]
horribleprogram surial: wait why would a == b [10:01]
horribleprogram surial: reference equality [10:01]
horribleprogram is there shared object pool now? [10:01]
dino82 [dino82!~deeno@unaffiliated/dino82] has joined ##java [10:02]
horribleprogram no seriously wtf is this [10:02]
surial horribleprogram: Integer.valueOf has a cache for all values from -128 to 127 and returns a singular Integer instance for those.. but for anything outside of those, it just goes new Integer(v). [10:02]
horribleprogram iight, that makes sense [10:02]
surial So, Integer.valueOf(120) == Integer.valueOf(120)... but Integer.valueOf(130) != Integer.valueOf(130). [10:02]
horribleprogram -128 to 127 is signed byte bounds right? [10:02]
surial yes. [10:03]
surial I guess that's why somebody somewhere decided that Integer.valueOf 'caches' for -128 to 127. [10:03]
Stummi == [10:03]
Stummi Never compare anything else than primitive types with ==. use ~equals instead. This also goes for basic types like String or Integer. Because Java holds the award for the most useless == operator ever. [10:03]
surial horribleprogram: this also leads to the fun times of: [10:03]
x256 The integer-cache is the same in python by the way. A lot of stdlibs do that. [10:03]
surial horribleprogram: if (!(x > y) && !(x < y) && !(x == y)) { System.out.println("x is neither larger than, nor smaller than, nor equal to y.. how the fuck does this print then?"); }.. [10:03]
surial horribleprogram: will compile and run just fine, and prints that, if you want: Integer x = new Integer(5), y = new Integer(5); [10:04]
surial the lesson is possibly that autoboxing and especially unboxing is a _LITTLE_ weird sometimes. [10:04]
algopro_ [algopro_!~algopro@lfbn-1-662-14.w86-246.abo.wanadoo.fr] has joined ##java [10:05]
horribleprogram surial: no that makes total sense [10:05]
horribleprogram surial: if one question is true [10:06]
x256 Even JavaScript WTFs make total sense if you know the rules. [10:06]
horribleprogram does unboxing occur with relational operators? [10:06]
surial horribleprogram: 'relational'? As in < and >? [10:06]
horribleprogram yes [10:06]
horribleprogram and also [10:06]
horribleprogram does x && y && z [10:06]
horribleprogram the chaining [10:06]
surial It occurs with ALL the operators. However, note that it only occurs if it would have been a compiler error otherwise. [10:06]
surial horribleprogram: x && y && z? Sure. [10:06]
horribleprogram x && y returns either false or true [10:06]
surial x && y && z is just short for (x && y) && z. [10:06]
horribleprogram kk [10:06]
surial yes, EXPR && EXPR is of type boolean, or is a compiler error, regardless of what the EXPRs are. [10:07]
surial that leaves boolean && EXPR, which will auto-unbox EXPR if it is of type Boolean, will just do its thing if EXPR is boolean, and is a compiler error otherwise. [10:07]
surial The weird ones are == and != which do not unbox if BOTH left-hand and right-hand side are objects (because then it is reference identity comparison)... [10:07]
horribleprogram sure [10:08]
surial and +, which will do string concat IF the LHS is of type string OR the RHS is. [10:08]
surial I don't think you can create a WTF situation there with autounboxing though. [10:08]
horribleprogram and since x and y point to the same object in memory the result of !(x == y) is true [10:08]
horribleprogram so you. got true && true [10:08]
surial I guess something like System.out.println(x + y + z).. if x is "1", y is 2, and z is 3, that prints 123, not 15. But boxing doesn't factor into it. [10:08]
horribleprogram that's totally different [10:09]
horribleprogram there's implicit promotion there [10:09]
surial horribleprogram: yes, so it's true && true && true and thus it prints. eventhough that code more or less reads as 'if x is neither larger than, nor smaller than, nor equal to y' which is usually impossible. [10:09]
horribleprogram 6 [10:09]
horribleprogram 6 [10:09]
horribleprogram ^* [10:09]
horribleprogram ffs [10:09]
horribleprogram surial: yeah it doesn't make logical sense, but when you know the rules, it makes sense [10:09]
horribleprogram surial: dude ily btw [10:10]
horribleprogram surial: you always take the time out to inform the youngins [10:10]
horribleprogram anyways I'll be back in 10 minutes, gotta get some coffee cuz i'm outta kpods [10:10]
surial yup. As x256 said, if you know the rules, almost all languages 'make sense', but the set of rules which aren't inherently obvious, for java, is a lot lower, AND, to boot, there are easy shortcut rules (such as, for autounboxing: If it would be a compiler error otherwise, unbox. That rule isn't how its defined but it works out exactly). In javascript, the rules about promotion are long, and non-obvious, and there are no shortcuts [10:10]
surial that fully cover the rules and never lead you astray. [10:10]
led_dark_1 [led_dark_1!~Thunderbi@217.66.160.14] has joined ##java [10:13]
bf_ [bf_!~bf_@ip5f5bcf7d.dynamic.kabel-deutschland.de] has joined ##java [10:16]
EgonX [EgonX!~Egon@2601:2c6:47f:98f4:413c:5cb3:b5ed:ca5e] has joined ##java [10:19]
DTZUZO [DTZUZO!~DTZUZO@S0106bcd165662a4d.vs.shawcable.net] has joined ##java [10:19]
macroprep [macroprep!~brotherco@172.193.104.55] has joined ##java [10:20]
SuperTyp [SuperTyp!~SuperTyp@15.5.3.213.static.wline.lns.sme.cust.swisscom.ch] has joined ##java [10:20]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [10:22]
troulouliou_div2 [troulouliou_div2!~troulouli@unaffiliated/troulouliou-div2/x-0271439] has joined ##java [10:24]
enoq [enoq!~enoq@2a02:8388:6a87:b080:649f:9456:c1b1:28e4] has joined ##java [10:25]
steaktartaar parted the channel: [10:30]
jackhum [jackhum!uid97400@gateway/web/irccloud.com/x-genjxoidinhztvxr] has joined ##java [10:39]
bgilb [bgilb!~bgilb@63-158-37-98.dia.static.qwest.net] has joined ##java [10:40]
manualcrank [manualcrank!~manualcra@bras-base-mtrlpq2718w-grc-09-70-24-226-18.dsl.bell.ca] has joined ##java [10:46]
zalt [zalt!~lambda443@unaffiliated/lambda443] has joined ##java [10:50]
rippa [rippa!~rippa@ppp-vpdn-37.1.85.157.yarnet.ru] has joined ##java [10:54]
conan [conan!~conan@mdproctor.plus.com] has joined ##java [10:58]
progart [progart!~kamee@5.77.136.219] has joined ##java [11:04]
zalt_ [zalt_!~lambda443@unaffiliated/lambda443] has joined ##java [11:05]
hooper [hooper!~hooper@2a01:e0a:191:c7b0:95e3:8bc6:c107:e587] has joined ##java [11:06]
bgilb parted the channel: "Leaving" [11:07]
progart [progart!~kamee@5.77.136.219] has joined ##java [11:07]
VegetarianFalcon [VegetarianFalcon!uid258908@gateway/web/irccloud.com/x-sjqdnytwkmgopklv] has joined ##java [11:09]
acidjnk_new2 [acidjnk_new2!~acid@200116b867917600f097a18cc69bb22e.dip.versatel-1u1.de] has joined ##java [11:13]
horribleprogram back [11:14]
dreamreal yay [11:17]
horribleprogram dreamreal: how you been? [11:17]
IRCNew [IRCNew!~Elrick@76-10-173-219.dsl.teksavvy.com] has joined ##java [11:24]
IRCNew So I have thought Eclipse IDE was broken for a long time. I have just realized my Under standing might not be correct. [11:25]
IRCNew So I have got an error of type Boolean is not visible [11:25]
cheeser #eclipse would be the place for eclipse questions. [11:25]
IRCNew Well I have just realized I might be coding wrong. [11:26]
waz eclipse is a piece of shit++ [11:26]
waz eclipse is a piece of shit has a karma level of 121, waz [11:26]
cheeser you already said you were using eclipse [11:26]
IRCNew "if (Boolean==true)" should be "if (Boolean.equals(true))" [11:26]
cheeser no [11:27]
cheeser never do that. [11:27]
cheeser 1. why is your variable named Boolean? [11:27]
dreamreal I do kinda agree you might be coding wrong [11:27]
IRCNew it is not named boolean [11:27]
cheeser 2. never compare to a boolean literal like that. [11:27]
dreamreal I mean, WTF [11:27]
cheeser paraphrase [11:27]
cheeser IRCNew, Don't paraphrase code or errors. If you knew what was important to show us, you wouldn't need us to answer your question. You should pastebin the *actual* code and the *actual* error. Anything else is most likely going to be useless. [11:27]
IRCNew just shorting with data types instead of writing the variable to not confuse [11:27]
dreamreal Yeah, that's doing the exact opposite of what you intend [11:28]
cheeser well done, there. [11:28]
Bombe Total fail, then. [11:28]
IRCNew So second is correct. [11:28]
Bombe No. [11:29]
x256 IRCNew: "if(myBoolean)" [11:29]
IRCNew but since I'm using Boolean instead of boolean it may return null [11:30]
Bombe Well, do you want that to be true or false? [11:31]
cheeser rarely is Boolean the correct type [11:31]
x256 IRCNew: Then "myBoolean.equals(true)" would also throw a NPE. [11:32]
dreamreal sighs [11:33]
cheeser if you *must* do that, Boolean.TRUE.equals(myBoolean) [11:33]
cheeser but that's gross and only rarely appropriate [11:33]
dreamreal and you should probably be reconsidering your life choices at this point [11:34]
cheeser that's Boolean.TRUE [11:34]
surial IRCNew: [1] if (someExprOfTypeCapitalB_Boolean == true) {} is no different from if (someExprOfTypeCapitalB_Boolean), and will NPE if it is null, execute the block if it is true, and not execute it if it is false. No real problem there, just.. not very idiomatic java (don't write == true for stuff, ever. That can just be left off). [11:34]
surial IRCNew: [2] If (someExprOfTypeCapitalB_Boolean == TRUE) {} does not compile.. unless you statically imported Boolean.TRUE. If THAT is what you did, oh deary me. That code is VERY broken. [11:34]
surial IRCNew: that does a reference identity check. Absolutely not what you want, AT ALL. [11:35]
surial IRCNew: [3] NONE of this has fuck all to do with either the error 'Boolean not found' OR eclipse, so, that part is mysterious to me. [11:35]
twodee23 [twodee23!~johndoe@117.198.102.130] has joined ##java [11:35]
cheeser I'm still guessing he's actually using a variable named Boolean and that's confusing type resolution. [11:35]
surial IRCNew: I think your sudden realization is in fact not correct. Feel free to elaborate either the problem or the realisation (or both) in some more detail, perhaps we can figure out where the misunderstanding's from. I rather doubt eclipse is buggy; this kind of basic stuff would thus imply half a million users just live with this. [11:35]
cheeser but this is why we need actual code and not something filtered through a newbie's "understanding" [11:36]
funeral [funeral!~Funeral@2a01:79d:b7df:4bd8:f3d4:5e09:6ffa:eb73] has joined ##java [11:36]
surial cheeser: quite so. [11:37]
surial IRCNew: and I guess [4] if you literally write, in your code: if (Boolean == true) {}, as in, you have a variable named Boolean, that could compile but please don't do that. That's obfuscating to the point of evil. [11:37]
tachoknight [tachoknight!~tachoknig@205.178.20.7] has joined ##java [11:37]
surial In java, the namespace for types and for fields/locals is separate thus you can have a type named Boolean and a method named Boolean and a localvar named Boolean. The language is designed such that ambiguity cannot exist. Nevertheless, please, don't. [11:38]
conan [conan!~conan@mdproctor.plus.com] has joined ##java [11:46]
progart [progart!~kamee@5.77.136.219] has joined ##java [11:48]
rafex [rafex!~rafex@fixed-189-203-28-241.totalplay.net] has joined ##java [11:52]
algopro__ [algopro__!~algopro@185.222.24.150] has joined ##java [11:54]
led_dark_1 [led_dark_1!~Thunderbi@217.66.160.14] has joined ##java [11:55]
learningc [learningc!~pi@121.122.105.195] has joined ##java [11:59]
IRCNew I was not using a variable named Boolean. I'm using an ArrayList which needs objects which is why those objects are of type Boolean [12:05]
IRCNew Well the strange problem with Eclipse is I have to clean the project to remove the errors before compiling with the original syntax which was strange [12:06]
IRCNew surial thanks for the information. Well I suppose it is just Eclipse being strange and giving me an error that makes no sense when I write it a specific way [12:11]
mbooth Well Eclipse doesn't just make up compile errors... [12:12]
IRCNew Well just sometimes gives me the error of "type Boolean not Found". I don't need to change the code to get this error and it is only every once in a while. But I thought I was using wrong syntax [12:14]
surial IRCNew: it's you. [12:14]
surial IRCNew: but without further details it's hard to explain whatr you're doing wrong. [12:14]
surial Your theory of 'eclipse injects random bullshit in the compile error list from time to time just to sass with you' is highly unlikely. [12:15]
IRCNew well I have not changed that Class in for ever and every once in a while it gives me that error [12:16]
Bombe Nope, that?s not what happens. [12:16]
Bombe I also have no idea what exactly does happen but I can guarantee you that?s not it. [12:17]
IRCNew so it could be that sometimes it understands what I meant to write and understands and other times it has no idea [12:17]
Bombe That?s? not how computers work. [12:17]
IRCNew That is how Eclipse works [12:17]
Bombe No, it?s not. [12:17]
dreamreal it really isn't. [12:18]
IRCNew It is not really a compiler error. Eclipse will highlight code in red and prevent from compiling. [12:18]
dreamreal sighs [12:18]
IRCNew might just be parsing. I'm not sure. [12:19]
mbooth IRCNew: What is the *exact* wording of the error? [12:19]
dreamreal might just be eclipse having the wrong workspace configuration. [12:19]
IRCNew Well like I said it is kinda random/sometimes [12:21]
dreamreal it is not. [12:21]
IRCNew "The type Boolean is not visible" [12:21]
IRCNew Finally got it after restart eclipse a few times [12:22]
IRCNew That only comes up on the if statements I can make variables using Boolean as a type anywhere and it is fine [12:22]
mbooth IRCNew: What version of Eclipse do you have? [12:23]
IRCNew 2019-03(4.11.0) [12:23]
IRCNew Well. I have moved away from eclipse for reasons like this. I'm just fixing an application that was designed using eclipse and tomcat [12:24]
zalt_ [zalt_!~lambda443@unaffiliated/lambda443] has joined ##java [12:25]
IRCNew well it was not fixing as much as adding some needed features like password reset [12:25]
mbooth IRCNew: I don't recall any related compiler bugs that have been fixed recently, but maybe you should at least try the newest version to see if the problem goes away (assuming it is an eclipse bug, and not user error) [12:26]
[twisti] IRCNew: can you post a full source file where you get the error ? on a pastebin, please [12:29]
ogradyd [ogradyd!~Thunderbi@2a02:8070:88bf:9df0::f59] has joined ##java [12:39]
r0ck3th [r0ck3th!~r0ck3th@k11089.upc-k.chello.nl] has joined ##java [12:41]
orbyt_ [orbyt_!~orbyt@172.92.5.20] has joined ##java [12:45]
sdu [sdu!~doo@ppp-94-65-22-16.home.otenet.gr] has joined ##java [12:46]
tristianc [tristianc!~tristianc@pool-72-83-128-193.washdc.fios.verizon.net] has joined ##java [12:47]
led1 [led1!~Thunderbi@217.66.160.14] has joined ##java [12:47]
donofrio_ [donofrio_!~donofrio@host-232.subnet-17.med.umich.edu] has joined ##java [12:48]
ham [ham!~z0mbie@unaffiliated/ragnarokkr] has joined ##java [12:57]
Live555 [Live555!~LIV33@174.128.181.121] has joined ##java [12:59]
Live555 parted the channel: [12:59]
LKoen [LKoen!~LKoen@81.255.219.130] has joined ##java [01:03]
plarsen [plarsen!~plarsen@redhat/jboss/pdpc.professional.plarsen] has joined ##java [01:03]
led1 [led1!~Thunderbi@217.66.160.14] has joined ##java [01:08]
g00s [g00s!~g00s@unaffiliated/g00s] has joined ##java [01:10]
LunarJetman [LunarJetman!LunarJetma@5ec1bc5a.skybroadband.com] has joined ##java [01:12]
Peste_Bubonica [Peste_Bubonica!~Peste_Bub@unaffiliated/peste-bubonica/x-4612396] has joined ##java [01:12]
ertiportline [ertiportline!~ertiportl@unaffiliated/ertiportline] has joined ##java [01:17]
mizi [mizi!~mizi@p200300ECF3CBB400C1FB4D04D175D964.dip0.t-ipconnect.de] has joined ##java [01:17]
gareppa [gareppa!~gareppa@unaffiliated/gareppa] has joined ##java [01:20]
NoirX [NoirX!~oem@s55942149.adsl.online.nl] has joined ##java [01:21]
NoirX hi [01:21]
NoirX String b = a.toUpperCase();b = b.replace("B", "2").replace('C', '3'); will b change? [01:22]
sonOfRa tias [01:22]
sonOfRa Try it and see. You learn much more by experimentation than by asking without having even tried. [01:22]
bitwinery [bitwinery!~bitwinery@c-73-37-18-139.hsd1.wa.comcast.net] has joined ##java [01:23]
NoirX the book i am reading changed b while b is immutuble [01:23]
progart [progart!~kamee@5.77.136.219] has joined ##java [01:23]
sonOfRa Yes, because you're *reassigning* it [01:24]
NoirX oh ok thanks sonorfa [01:24]
indistylo [indistylo!~aruns_@122.172.160.236] has joined ##java [01:24]
NoirX parted the channel: [01:24]
progart [progart!~kamee@5.77.136.219] has joined ##java [01:24]
progart [progart!~kamee@5.77.136.219] has joined ##java [01:25]
SwiftMatt [SwiftMatt!~Objective@2601:282:4300:3e:d5fb:4690:604c:b91] has joined ##java [01:33]
dougquaid [dougquaid!dougquaid@gateway/vpn/privateinternetaccess/dougquaid] has joined ##java [01:33]
dougquaid My project uses gradle and I want to use Pcap4j (https://github.com/kaitoy/pcap4j#how-to-use) but its instructions only show Maven. Is it possible to use it in gradle? [01:35]
dougquaid dougquaid's title: "GitHub - kaitoy/pcap4j: A Java library for capturing, crafting, and sending packets." [01:35]
dreamreal yes [01:35]
dreamreal compile "groupid:artifactid:version" <-- the dependency line [01:35]
dreamreal so: compile "org.pcap4j:pcap4j-core:1.8.2" # etc [01:36]
dougquaid That was it! I thought I had done it correctly but I accidentally typed pacp instead of pcap. Thanks! [01:37]
dougquaid Also, when should I use compile and when should I use implementation? [01:37]
dreamreal depends on the scope of the dependency. One's transitive, one's not. [01:37]
LKoen [LKoen!~LKoen@81.255.219.130] has joined ##java [01:41]
RedSoxFan07 [RedSoxFan07!~Thunderbi@d-137-103-109-45.ct.cpe.atlanticbb.net] has joined ##java [01:42]
CookieM [CookieM!~tomek@afdj60.neoplus.adsl.tpnet.pl] has joined ##java [01:44]
mindCrime [mindCrime!~mindCrime@208-1-62-50.static.celitofiber.net] has joined ##java [01:46]
yokel [yokel!~yokel@unaffiliated/contempt] has joined ##java [02:02]
Sasazuka [Sasazuka!~Sasazuka@unaffiliated/sasazuka] has joined ##java [02:05]
Phizzy [Phizzy!~phillip@217.135.224.84] has joined ##java [02:10]
dostoyevsky > Regular reminder that Docker Hub is not really an enterprise registry with an SLA. You should use pretty much anything else for serious applications that rely on pulling images in the hot path (such as auto-scaling up). <- I guess running my own registry as a default was the right decision after all [02:14]
Matthijs [Matthijs!~quassel@unaffiliated/matthijs] has joined ##java [02:15]
javabot [javabot!~javabot@unaffiliated/javabot] has joined ##java [02:28]
Merlin_O [Merlin_O!~Merlin_O@x4d061a35.dyn.telefonica.de] has joined ##java [02:31]
kamee [kamee!~progart@5.77.136.219] has joined ##java [02:32]
twodee23 [twodee23!~johndoe@2401:4900:2000:9b75:d11b:ea52:cf89:1dd0] has joined ##java [02:34]
indistylo [indistylo!~aruns_@106.51.30.184] has joined ##java [02:34]
dreamreal dostoyevsky: get a blog, thanks [02:56]
sa02irc [sa02irc!~sa02irc@155-079-043-212.ip-addr.inexio.net] has joined ##java [02:57]
sa02irc [sa02irc!~sa02irc@155-079-043-212.ip-addr.inexio.net] has joined ##java [03:07]
gelignite [gelignite!~gelignite@55d4b9f6.access.ecotel.net] has joined ##java [03:08]
indistylo [indistylo!~aruns_@106.51.30.184] has joined ##java [03:18]
sleepywitch [sleepywitch!~textual@cpe-24-55-21-107.austin.res.rr.com] has joined ##java [03:27]
progart [progart!~kamee@5.77.136.219] has joined ##java [03:33]
progart [progart!~kamee@5.77.136.219] has joined ##java [03:34]
progart [progart!~kamee@5.77.136.219] has joined ##java [03:36]
progart [progart!~kamee@5.77.136.219] has joined ##java [03:37]
ham [ham!~z0mbie@unaffiliated/ragnarokkr] has joined ##java [03:38]
progart [progart!~kamee@5.77.136.219] has joined ##java [03:38]
kicked progart (Banned: please fix your connection. you're bouncing in and out. this ban will expire after 1d) [03:38]
SwiftMatt [SwiftMatt!~Objective@2601:282:4300:3e:d5fb:4690:604c:b91] has joined ##java [03:39]
indistylo [indistylo!~aruns_@106.51.30.184] has joined ##java [03:40]
conan [conan!~conan@mdproctor.plus.com] has joined ##java [03:45]
GivenToCode [GivenToCode!~GivenToCo@ext.mathworks.com] has joined ##java [03:50]
algopro_ [algopro_!~algopro@185.222.24.139] has joined ##java [03:52]
cixx [cixx!~user@176.43.35.17] has joined ##java [03:52]
cixx hi. [03:52]
palasso [palasso!~palasso@unaffiliated/palasso] has joined ##java [03:54]
dreamreal hello, cixx [03:56]
dino82 [dino82!~deeno@unaffiliated/dino82] has joined ##java [03:59]
indistylo [indistylo!~aruns_@106.51.30.184] has joined ##java [04:02]
cixx in a software project, there are integrations with different companies(for example, amazon integration, ebay integration, cargo integration etc..). after software project is completed, we need to continue to add new integrations for different companies. can we consider these new integrations as a change on a software project in terms of scrum methodology? [04:05]
TlrDr [TlrDr!~tlrdr@126-180-35-213.dyn.estpak.ee] has joined ##java [04:06]
cheeser try #programming. that's ... not really a java question. [04:06]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [04:08]
cixx thank you [04:09]
jaziz [jaziz!~jaziz@unaffiliated/jaziz] has joined ##java [04:14]
kupi [kupi!uid212005@gateway/web/irccloud.com/x-zbwyojdvnlevbraf] has joined ##java [04:24]
ogradyd [ogradyd!~Thunderbi@2a02:8070:88bf:9df0::f59] has joined ##java [04:25]
rafex [rafex!~rafex@fixed-189-203-28-241.totalplay.net] has joined ##java [04:31]
jadesoturi [jadesoturi!~jadesotur@unaffiliated/kfj] has joined ##java [04:33]
indistylo [indistylo!~aruns_@106.51.30.184] has joined ##java [04:42]
jadesoturi [jadesoturi!~jadesotur@unaffiliated/kfj] has joined ##java [04:46]
Nicmavr [Nicmavr!~Nicmavr@unaffiliated/nicmavr] has joined ##java [04:54]
indistylo [indistylo!~aruns_@106.51.30.184] has joined ##java [04:55]
ham [ham!~z0mbie@unaffiliated/ragnarokkr] has joined ##java [04:56]
orbyt_ [orbyt_!~orbyt@172.92.5.20] has joined ##java [04:59]
dgtlcmo [dgtlcmo!~dgtlcmo@c-24-61-203-74.hsd1.ma.comcast.net] has joined ##java [05:06]
indistylo [indistylo!~aruns_@106.51.30.184] has joined ##java [05:07]
jadesoturi [jadesoturi!~jadesotur@unaffiliated/kfj] has joined ##java [05:09]
rruizt [rruizt!~rruizt@83-84-23-124.cable.dynamic.v4.ziggo.nl] has joined ##java [05:09]
computeiro [computeiro!~Wender@179.104.193.162] has joined ##java [05:17]
jadesoturi [jadesoturi!~jadesotur@unaffiliated/kfj] has joined ##java [05:17]
jadesoturi [jadesoturi!~jadesotur@unaffiliated/kfj] has joined ##java [05:19]
atrament666 [atrament666!~atrament@cpc95006-newt38-2-0-cust73.19-3.cable.virginm.net] has joined ##java [05:22]
jadesoturi [jadesoturi!~jadesotur@unaffiliated/kfj] has joined ##java [05:23]
jadesoturi [jadesoturi!~jadesotur@unaffiliated/kfj] has joined ##java [05:25]
jamiejackson [jamiejackson!d03a471f@gateway/web/cgi-irc/kiwiirc.com/ip.208.58.71.31] has joined ##java [05:30]
jadesoturi [jadesoturi!~jadesotur@unaffiliated/kfj] has joined ##java [05:31]
indistylo [indistylo!~aruns_@106.51.30.184] has joined ##java [05:33]
jmorris [jmorris!uid374834@gateway/web/irccloud.com/x-wexqnphbagcggufr] has joined ##java [05:37]
jadesoturi [jadesoturi!~jadesotur@unaffiliated/kfj] has joined ##java [05:39]
indistylo [indistylo!~aruns_@106.51.30.184] has joined ##java [05:48]
Secret-Fire [Secret-Fire!~Secret-Fi@97.115.245.42] has joined ##java [05:48]
EgonX [EgonX!~Egon@c-98-195-195-100.hsd1.tx.comcast.net] has joined ##java [05:50]
Secret-Fire [Secret-Fire!~Secret-Fi@97.115.245.42] has joined ##java [05:50]
conan [conan!~conan@mdproctor.plus.com] has joined ##java [06:01]
horribleprogram [horribleprogram!~horriblep@unaffiliated/nightcoder] has joined ##java [06:03]
horribleprogram dudes [06:03]
horribleprogram surial: https://imgur.com/a/GgRc09p [06:04]
horribleprogram was our conversation before this? [06:04]
Diablo-D3 what? [06:05]
horribleprogram on twitter [06:06]
Diablo-D3 is that tweet a trap? [06:06]
horribleprogram no [06:06]
horribleprogram me and surial were talking about this exact phenomenon earlier [06:06]
Diablo-D3 both of those would be the exact same object, taken out of the cache [06:06]
horribleprogram NO the point is [06:06]
horribleprogram someone here is listening and stealing our ideas [06:06]
Diablo-D3 oh [06:07]
horribleprogram and that's incorrect [06:07]
horribleprogram Diablo-D3: signed char [06:07]
horribleprogram -128 to 127 [06:07]
horribleprogram 150 outside that range [06:07]
Diablo-D3 oh right [06:07]
Diablo-D3 sorry I was in another language lately, headspace is still there [06:07]
horribleprogram i feel that [06:07]
horribleprogram just found out about the var keyword [06:07]
Diablo-D3 was thinking 8 bit, not signed 8 bit [06:07]
horribleprogram mhm [06:07]
Diablo-D3 var is nice [06:08]
horribleprogram yeah, something I also mentioned here years aago [06:08]
horribleprogram weird how everything I say is stolen and implemented without any recognition [06:08]
Diablo-D3 okay so [06:09]
Diablo-D3 Ive finished in swapping in my memory pages on java from my deep brain [06:09]
Diablo-D3 should that _not_ say false false? [06:09]
Diablo-D3 WAIT [06:09]
Diablo-D3 TRUE FALSE [06:09]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [06:09]
Diablo-D3 100 is in the cache, 150 isnt [06:09]
horribleprogram yes [06:09]
horribleprogram a == b cuz they point to the same object [06:10]
horribleprogram c != d [06:10]
Diablo-D3 reports the tweet to the authorities [06:10]
cader wait, explain this more plz [06:10]
horribleprogram no [06:10]
cader k [06:10]
horribleprogram cuz someone's listening on this channel [06:10]
dreamreal enter [06:10]
dreamreal horribleprogram, Enter is not punctuation. Please don't press your Enter or Return key until you're finished typing your question, sentence, or idea. It is annoying to see that and hard to follow. [06:10]
Diablo-D3 aww he quit [06:11]
tang^ horribleprogram [06:12]
tang^ tang^, what does that even *mean*? [06:12]
tang^ glares at javabot [06:12]
tang^ channel logs [06:12]
tang^ tang^, what does that even *mean*? [06:12]
tang^ channel logs [06:13]
tang^ channel logs can be found at http://javabot.evanchooly.com/ (Select the channel from the list on the left-hand side.) [06:13]
tang^ horribleprogram: ^ [06:13]
dreamreal tang^: he's... not here [06:13]
tang^ then wh.... my client is still completing [06:13]
tang^ stupid software [06:13]
ron mock tang^ [06:19]
javabot points at tang^ and laughs [06:19]
tang^ yes. thank you sir. may I have some more? [06:20]
Diablo-D3 man [06:21]
ron mock tang^ [06:21]
javabot points at tang^ and says "your dum" [06:21]
Diablo-D3 now I want a kotlin twitter account that posts stuff like that [06:21]
fstd_ [fstd_!~fstd@unaffiliated/fisted] has joined ##java [06:24]
rafex [rafex!~rafex@fixed-189-203-28-241.totalplay.net] has joined ##java [06:32]
di0_ [di0_!~di0_@unaffiliated/di0-/x-5053590] has joined ##java [06:32]
tristianc [tristianc!~tristianc@172.58.191.87] has joined ##java [06:35]
LunarJetman parted the channel: [06:50]
waz [waz!~waz@pdpc/supporter/active/waz] has joined ##java [06:52]
Blue_Hat [Blue_Hat!~TwinKam20@216.10.218.162] has joined ##java [06:54]
fstd [fstd!~fstd@unaffiliated/fisted] has joined ##java [07:21]
Oatmeal [Oatmeal!~Suzeanne@ip68-4-181-8.oc.oc.cox.net] has joined ##java [07:33]
dendazen [dendazen!~dendazen@2600:380:5a38:4d09:a4d6:b439:99bc:5e80] has joined ##java [07:40]
Sheilong [Sheilong!uid293653@gateway/web/irccloud.com/x-ykpfpnfohhdqwsuq] has joined ##java [07:42]
tomboy64 [tomboy64!~tomboy64@gateway/tor-sasl/tomboy64] has joined ##java [07:50]
nokdoot [nokdoot!~nokdoot@211.205.207.39] has joined ##java [07:55]
waz [waz!~waz@pdpc/supporter/active/waz] has joined ##java [08:01]
Bebef [Bebef!sbreit@phobos.bebef.de] has joined ##java [08:14]
yawkat [yawkat!~yawkat@cats.coffee] has joined ##java [08:28]
SwiftMatt [SwiftMatt!~Objective@2601:282:4300:3e:d5fb:4690:604c:b91] has joined ##java [08:31]
rafex [rafex!~rafex@fixed-189-203-28-241.totalplay.net] has joined ##java [08:33]
macroprep [macroprep!~brotherco@cpe-172-193-104-55.qld.foxtel.net.au] has joined ##java [08:41]
Jigsy` [Jigsy`!~Jigsy@unaffiliated/jigsy] has joined ##java [08:41]
hypc1 [hypc1!~Thunderbi@113.233.221.152] has joined ##java [08:42]
jadesoturi [jadesoturi!~jadesotur@unaffiliated/kfj] has joined ##java [08:45]