greptilian logo

IRC log for #javaee, 2014-01-15

Please see http://irclog.greptilian.com/javaee for which days have been logged.

| Channels | #javaee index | Today | | Search | Google Search | Plain-Text | plain, newest first | summary

All times shown according to UTC.

Time S Nick Message
01:53 tommmied joined ##javaee
03:23 acuzio joined ##javaee
03:31 SoniEx2 joined ##javaee
03:32 tommmied joined ##javaee
03:32 firebird1 joined ##javaee
04:07 firebird1 damn jasper reports suck
04:07 firebird1 cant understand
04:32 tommmied joined ##javaee
04:47 firebird1 i totally came with 53 tables still dont know this is correct :(
05:01 firebird1 joined ##javaee
05:33 tommmied joined ##javaee
05:33 Bombe joined ##javaee
05:45 firebird1 joined ##javaee
05:45 firebird1 hi
06:32 tommmied joined ##javaee
06:49 firebird1 difference between cookbook and bok ?
07:22 firebird1 hell need to report client on saturday
07:22 firebird1 :'(
07:30 firebird1 i wont let sfisque,pdurbin moveout today :D
07:31 neuro_sys joined ##javaee
07:32 tommmied joined ##javaee
07:35 * firebird1 going to hell will be back with my smart phone
08:02 kobain_ joined ##javaee
08:32 tommmied joined ##javaee
08:35 firebird1 joined ##javaee
08:49 TomyWork joined ##javaee
08:49 TomyWork hi
08:51 TomyWork this might be off-topic, but i have a jboss running in a VM on my machine and I would like to create a link that automatically logs me in with a certain user/pass
08:51 TomyWork err, into the management console
08:52 TomyWork i tried http://user:pass@server:port, but that just makes firefox spew warnings about attempted subterfuge and then the login prompt is back
09:00 firebird1 what is the warning ?
09:06 TomyWork does it matter?
09:09 TomyWork it's one of these: http://lh5.ggpht.com/_0G45OzGsIro/TD93wlhLZlI/AAAAAAAADg0/XUJhc0JMalI/image_thumb%255B6%255D.png%3Fimgmax%3D800
09:15 knoppix joined ##javaee
09:32 tommmied joined ##javaee
09:33 firebird1 i see
10:30 knoppix__ joined ##javaee
10:32 tommmied joined ##javaee
11:32 tommmied joined ##javaee
11:40 acuzio left ##javaee
12:19 sajjadg joined ##javaee
12:22 Ziberius joined ##javaee
12:22 SoniEx2 joined ##javaee
12:32 tommmied joined ##javaee
13:49 firebird1 joined ##javaee
13:56 firebird1 hello world
13:59 tommmied joined ##javaee
13:59 jieryn joined ##javaee
13:59 jieryn joined ##javaee
14:14 kobain joined ##javaee
14:30 Naros joined ##javaee
14:46 sajjadg firebird1: you forgot the system.out.println();
15:09 firebird1 :D
15:09 firebird1 where is sfisque ?
15:09 firebird1 ill be back with my first report
16:19 trollolol joined ##javaee
17:26 pdurbin if (cause instanceof ConstraintViolationException)
17:26 pdurbin fun with bean validation :)
17:42 trollolol joined ##javaee
17:45 sajjadg joined ##javaee
18:35 sheenobu joined ##javaee
18:41 sfisque joined ##javaee
18:49 sajjadg joined ##javaee
18:51 Naros left ##javaee
19:06 whartung anyone looked at the recent JEE 8 survey?
19:16 sfisque link?
19:18 whartung https://blogs.oracle.com/theaquarium/entry/java_ee_8_community_survey
19:21 whartung what do you think about Guice vs CDI sfisque
19:24 sfisque depends on container.  if you're in an EE container, why add unnecessary libs.  if you're in a servlet container, you kind of have to go with either guice or spring
19:25 whartung or weld, which is CDI
19:25 whartung The one thing that attracts me to guice
19:25 sfisque aye but weld is the reference implementation
19:25 whartung is that it's explicit
19:25 whartung @Inject MyBean bean
19:25 whartung and you need to configure that, in Java actually, so it's type safe.
19:26 whartung vs in CDi
19:26 whartung you don't, it'll "hunt it down"
19:26 whartung "hunt it down" == black magic
19:26 sfisque unsure what you mean?
19:26 whartung by default, in CDI, you can inject pretty much anything
19:26 whartung all you need is an empty beans.xml
19:26 whartung so it's pretty liberal "convention over configuration"
19:27 whartung @Inject MyBean bean is about this ][ close to just be "new MyBean()" out of the box
19:27 sfisque well according to the spec, there are very explicit rules on the convention.  it's not black magic.  it's pretty clear
19:27 sfisque well, except the impl is free to pool/proxy/delegate as it sees fit
19:27 whartung yes.
19:27 whartung but that also means
19:27 sfisque so you don't ahve to care about wether you new or obtain
19:29 whartung that if a new class lib is added to your project, then the configuration implicitly is changed. Simple example, if you're injecting an interface, and now, suddenly, two implementation of that interface are now on the class path, a default injection that worked before with one, now no longer works, as there's a choice to be made.
19:30 whartung so now, "suddenly", you code is not working as expected.
19:30 sfisque well if you're adding new libs that provide parallel impl, one would assume you have vetted the code, which means you'd detect the ambiguity and cleared it up with a specifier annotation
19:31 sfisque qualifier annotation
19:31 whartung maybe, maybe not :)
19:31 sfisque which is about 4 min of code
19:31 sfisque well, you're confusing a process breakdown with a coding standard
19:31 sfisque if the team isnt vetting code, it's not the platforms job to save them
19:31 whartung my point is that it makes the system "more" environmentally sensitive.
19:32 sfisque EE is ALL ABOUT ENVIRONMENT
19:32 whartung how do you mean
19:33 sfisque we not talkinga bout a simple swing toy.  this is enterprise.  stitching together systems and services, funneling data/messages over conduits.  everything is environment in EE.  to not accept that is to go in naively
19:34 sfisque IMO that's one of the big dangers of ejb3.  it simplified the coding, and people lost sight of the fact that it's still enterprise with all the issues.  they just removed alot of the boiler plate and config
19:34 whartung that's kind of the thing right there.
19:34 whartung when the "simple stuff", "just works", then as you use the system, you don't spend much time on the edge cases.
19:35 whartung so they're not foremost in your consciousness
19:35 sfisque people still need to read the fracken spec.  i had people asking me questions at the last gig that were straight up answered in the java ee spec pdfs
19:35 sfisque it was saddening
19:35 whartung so when things change, you start getting in to the "darker corners" of the specification.
19:36 sfisque that's another failing of enterprise implementation.  too many shops have phased out the role of arch and that has lead to crummy cohesion between systems
19:36 whartung and when that happens, folks are "cutting and pasting" there way in to "fixes they found on the internet"
19:36 sfisque aye.  but someone on the team should be lurking there.  every EE team needs "the dude in the shadows"
19:36 sfisque aye
19:37 whartung it gets tiring having to be responsible for 1000 pages of specification when in day to day, you use only 50 of them.
19:38 whartung I was thinking of looking at something like this: http://www.jooq.org/
19:38 kobain joined ##javaee
19:39 whartung type safe SQL building in java, vs JPA. Something more explicit than JPA, but not as painful as raw SQL
19:39 sfisque consider the tradeoff.  write your own TX framework, connection pooling framework, directory services framework, and all the other stuff that EE provides.   so the big question is… does the team learn the F'in platform, or do you reinvent the wheel
19:39 whartung but there's also simplifying the stack to rely on only a few fundamental services.
19:39 whartung (not the JEE stack, the "development stack" so to speak)
19:40 sfisque EE-lite.  you have that starting in EE6.  the Lite spec is for "minimal containers".  the downside is, there does not seem to be much motion in delivering EElite containers atm.
19:41 sfisque what we need is a good EELite impl published by a big name, like apache, jboss, ibm, or oracle
19:41 sfisque so we can finally have TC+spring jettisoned into orbit like it should be
19:42 whartung just seems that something like Guice, with its explicit config, a TX wrapper of some kind, some JOOQ like thing (maybe even mybatis), and a RESTy service framework, just seems to hit a lot of primary needs to me
19:42 whartung doesn't TomEE do that?
19:43 whartung (I really don't know the diff between TomEE and Geronimo -- why apache needs two containers )
19:43 whartung write now, I'm sorta fighting a web service that "goes away" after a deploy "sometimes"
19:43 sfisque i'm guessing having it "parted out" like that makes it easier to sell to the suits.  everyone at the CxO level has a boner for cheap spring developers
19:44 sfisque "look!  it's Tomcat…. just pre-vetted with extra techs that we'd end up vetting ourselves anyway!"
19:44 whartung EJB Lite is really close
19:44 sfisque CxO pops a boner, calls india/russia/china
19:44 whartung :)
19:44 whartung "Send in the Indian!"
19:44 whartung *Indians
19:44 sfisque aye.  only issue is, no one's pushing a viable production EELite container :-(
19:45 sfisque we have a spec, and no good contenders
19:45 whartung CDI + Jersey + Something-Not-JPA
19:46 whartung not enough experience with jersey yet to hate it :)
19:46 whartung so, i'll roll with it
19:46 sfisque myBatis seems to be the next "flavor of the weak"
19:46 whartung it's been around forever
19:46 sfisque not ibatis.   mybatis which replaces all the OO with xml config
19:46 sfisque because we all know EE needs MORE xml
19:46 whartung this Jooq thing is compelling because it's type safe, even though it relies on a code generator from the schema.
19:47 whartung there's something warm and fuzzy about updating the schema and having the compiler a better chance at breaking things
19:47 sfisque jpa does that too.  so… i have to ask… what's the compelling part?
19:47 whartung no object management
19:47 whartung just query building
19:48 whartung no cascades no lazy fetches, etc.
19:48 sfisque you can turn OM off.  just query into detached objects
19:48 sfisque they just become plain VOs
19:48 sfisque i'm smelling solution looking for a problem
19:49 whartung my overall goal is to be able to look at the code and know what it's doing. there's a lot of stuff today happening behind the scenes, and code doesn't mean what it says any more.
19:49 sfisque gotcha
19:49 whartung and I'm tired of debugging frameworks and not my code.
19:50 whartung tired of walking on eggs and upsetting someone else's 50K lines of code I didn't write, but I'm responsible for.
19:50 whartung "nothing changed and the deploy is failing"
19:50 sfisque i do not think that ever goes away.  switching frameworks only "moves the problem"
19:50 whartung oh, I know…"Yea, the grass may be greener -- but there's more of it to mow."
19:51 sfisque the other option is to fragment and make everything tiny toy apps that are portaled
19:51 whartung that brings on other complexities -- yay -- integration!
19:51 sfisque but then the problem becomes scale
19:51 sfisque aye
19:51 whartung that's funny tho
19:51 whartung someone on tomcat room
19:51 sfisque "moves the problem"
19:51 whartung installing some app
19:51 whartung that's deployed as HUNDREDS of WARs
19:51 whartung "wut?"
19:52 sfisque W I N!!!!
19:52 whartung yea that was kind of scary
19:52 whartung "war != cgi-bin script, k?"
19:52 sfisque but but but but!!!!
20:03 whartung how do you turn off managed objects outside of a transaction?
20:03 whartung or I should say inside
20:08 sfisque http://docs.oracle.com/javaee/6/api/javax/persistence/criteria/CriteriaBuilder.html#construct(java.lang.Class,%20javax.pers​istence.criteria.Selection...)
20:08 sfisque javaeebot lucky CriteriaBuilder construct example
20:08 javaeebot sfisque: https://blogs.oracle.com/ldemichiel/entry/the_typing_of_criteria_queries
20:09 whartung where does Customer_.id come from?
20:09 sfisque the result of a query that uses a constructed selection is auto-detached on delivery
20:12 sfisque the paradigm is that you use an @Entity, but instead of fetching the full object, you fetch only the columns you need, into a constructor that matches the selected columns, and you get a detached object that is only populated with the data you need rather than the full tree with all the management
20:12 sfisque perfect for times when you need to fetch the elements of a pop up list or render leaves in a tree in report generation and you don't want to pay the full price of a full fetch
20:13 whartung that example doesn't jive with the javadoc
20:15 neuro_sys joined ##javaee
20:15 sfisque javaeebot google CriteriaBuilder construct example
20:15 javaeebot sfisque: The Typing of Criteria Queries (Linda DeMichiel's Blog) - Blog: Oracle: <https://blogs.oracle.com/ldemichiel/entry/the_typing_of_criteria_queries>; Chapter 9. Criteria Queries: <https://docs.jboss.org/hibernate/entitymanager/3.6/reference/en/html/querycriteria.html>; JPA Criteria API Queries (CriteriaBuilder, CriteriaQuery) - ObjectDB: <http://www.objectdb.com/java/jpa/query/criteria>; Java (2 more messages)
20:15 neuro_sys joined ##javaee
20:17 whartung yea that blog returns a CriteriaQuery object, and then they call cq.from(..) on it, returning a Root<..>, but javadoc doesn't have a "from"method on criteria query
20:50 semiosis feline.speak()
21:01 sfisque inherited from AbstractQuery
21:24 sfisque what is a good tool to redirect port 80 to my ee container other than using apache as a proxy.  i could use stunnel but i dont want all of the traffic encrypted so i'd rather just funnel through straight without having jboss run as root.
21:30 whartung linux can't run privileged ports on unprivileged processes yet?
21:37 mbc joined ##javaee
21:37 sfisque afaik no.  still need root to bind to under 1024.
21:37 sfisque but i don't let root run java because it's a huge security hole
21:37 sfisque currently i have apache do it because it does suid well
21:37 whartung yea
21:38 sfisque but i'd rather run something lighter weight than apache just to proxy because apache isn't doing anything else
21:38 whartung you consider a server running java as a security threat?
21:38 whartung does it consume any real memory doing this?
21:38 sfisque no, but running java as root is never a good idea
21:38 whartung I mean, really, what's the difference between a proxy and an http server.
21:38 sfisque not sure, but apache has all sorts of facilities that i don't need
21:39 sfisque all i want is port 80 redirect and that's it.  don't need the process to do any other magic
21:39 whartung ah, the good old days of inetd :)
21:40 sfisque guess i'll google.  i figured ask here first to see if there was a recommended solution
21:40 whartung yea I don't know of anything
21:41 sfisque lots of hits for iptables.  but i never liked the configuration of iptables.  not very clear or obvious
21:41 whartung yea
21:41 whartung dangerous :)
21:41 whartung "Wait, what happened to ssh?"
21:42 whartung $ iptables save<ENTER> … NO CARRIER
21:42 sfisque lolz
21:42 sfisque i guess i could just build a ssh tunnel in a bash script.  not elegant, nor fault tolerant
21:43 whartung I routed LP over port 25 using inetd once, that was fun - thankfully nobody mailed use anything haha
21:43 sfisque oh man
21:43 whartung that was pretty cool back in the day
21:44 whartung we had our main distribution system, ran on an HPUX machine, green screen stuff.
21:44 whartung and once a year
21:44 whartung we had an off site location, so we wanted to connect them.
21:44 whartung what we did was we built up a simple linux box, and that gave us two terminals -- the console, and one of the serial ports.
21:44 whartung the other serial port was for the modem.
21:45 sfisque so basically a relay box
21:45 whartung basically a simple terminal server.
21:45 whartung originally we had them call our own modem and connect directly to our network, but they wanted to cut down the long distance charges
21:46 whartung so they signed up with a local internet provider, and we routed the telnet (TELNET I TELL YOU!!) traffic from the linux box to our machine.
21:46 whartung but we need to print locally.
21:46 whartung before we just set the linux box up as a remote printer off of the main server -- ez mode.
21:46 whartung but LP wouldn't route over the new provider
21:46 sfisque looks like iptables is "the" way to do it on linux.  guess i need to read up and refamiliarize myself
21:47 whartung so I picked 25, since I knew if ANYTHING had to route, it was port 25 :)
21:47 sfisque lolz
21:47 sfisque a safe assumption
21:47 whartung so, the spooler on our side fired off a script that opened up port 25 on the remote machine.
21:48 whartung and on that I had the simplest script you could imagine tied to inetd: "cat | lp"
21:48 whartung worked like a champ :)
21:48 whartung it basically echoed anything coming in over port 25 to the printer
21:49 sfisque the days of duct tape and linux voodoo
21:49 whartung unix glory days
21:50 whartung being able to write simple network server in shell scripts…them were the days!
21:50 sfisque it's funny.  i'm not a fan of software patents, but there are some that really deserve the patents they got.  pipes was just an astounding leap
21:50 whartung heh
21:50 whartung I used the same technique to turn a 4GL program in to a proxy db server
21:51 sfisque :-D
21:51 whartung takes a sql command over stdin, feeds it to the DB, dumps it back in CSV
21:51 whartung "secure"
21:51 whartung *snort*
21:51 sfisque ROFL
21:52 whartung we didn't have ubiquitous connectivity in them days :)
21:52 sfisque yah.  when rutgers uninstalled talk, a bunch of us figured out we could use pipes and write to mimic what talk did.  the sysops didnt care much for that
21:52 whartung yea nice
21:52 whartung pipes are the bomp
21:52 sfisque aye that
21:52 whartung SOA 101 :)
21:52 sfisque day 1:  learn bash and pipes
21:52 sfisque day 2: h4X0rz!
21:53 sfisque day 3: ways to hide when sysops knocks on your door
21:53 whartung BitD some friends of mine wrote a COMPASS simulator. COMPASS was the machine code for the CDC Cyber mainframes.
21:53 whartung they could then execute the system binaries on their emulator…boy howdy,did they find back doors lol
21:54 sfisque heh heh
21:54 whartung simpler times….
21:59 neuro_sys is it always unsafe to use threads in a ee container?
22:00 sfisque not "always", but you can deadlock the container.  besides, how would you syncrhonize the threads, you're prohibited from using syncrhonization primitives in the container (for possibly obvious reasons)
22:01 sfisque if you NEED threads, use @Asynch, an MDB, or build the threads in a JCA adapter
22:01 sfisque the real question is… what are you trying to do that requries threads in the EE container?
22:01 sfisque the facility might already be provided
22:12 sfisque basically.  there is nothing to stop the creation of threads IN the ejb container, but the spec very explicitly says, DO NOT DO THIS
22:13 sfisque effectively there are three "no no's" in EJB land.   explicit creation of threads, explicit file i/o, synchronization other than transactional demarcation
22:42 whartung heh
22:42 whartung that said, I do all those things lol
23:12 semiosis_ joined ##javaee
23:15 javaeebot` joined ##javaee
23:15 SEx2 joined ##javaee
23:16 semiosis joined ##javaee
23:16 semiosis joined ##javaee
23:19 kobain joined ##javaee
23:20 sfisque i'm curious how.  if you're in an SLSB you have no instance vars to synchronize on.  if you're in a SFSB you run the risk of locking up the transaction because it needs to flush a var that is being syncrhonized on.
23:21 whartung synchronize on external singleton stuff, etc.
23:25 semiosis_ joined ##javaee
23:27 semiosis joined ##javaee

| Channels | #javaee index | Today | | Search | Google Search | Plain-Text | plain, newest first | summary

Please see http://irclog.greptilian.com/javaee for which days have been logged.