- Yettel topik
- Google Pixel topik
- iPhone topik
- Hivatalos a OnePlus 13 startdátuma
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Android szakmai topik
- Milyen okostelefont vegyek?
- Apple Watch
- A hagyományos (nem okos-) telefonok jelene és jövője
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
Új hozzászólás Aktív témák
-
tick
aktív tag
Üdv. HTTP szervert próbálok írni gyakorlásként. Chrome-nak van egy preload funkciója ami nyit egy plusz socketet amit gyakorlatilag csak parkoltat esetleges későbbi tartalmak párhuzamos letöltésére.
A socket stream-jéből nem lehet olvasni így csak feleslegesen foglal egy szálat timeout-ig.
Van valami jó módszer arra hogy ezeket meg tudjam különböztetni egy valós http kéréstől ami valamilyen hiba miatt nem tudott írni a streamre? -
tick
aktív tag
Sziasztok,
JSch-val próbálkozok. Az alap shell példa nagyon jó, lényegében egy működő terminált kapok vele, de nyilván nem ez a célom.
Nap mint nap rendszeresen kell ugyanazt a parancs sorozatot kiadnom egy érték kinyeréséhez amivel dolgoznék tovább. Ezt szeretném egyszerűsíteni akár vizuálisan egy gombbal vagy egy egyedi paranccsal. (tudom hozhatnék létre shell scriptet, de nem egy szerverről és nem egy userről van szó)Lényegében a stream-ekkel van gondom. A példa System.in-t és out-ot használ.
Szeretnék System.in-re írni, de ez gondolom ilyen egyszerűen nem kivitelezhető. Van valami módja hogy pipe szerűen egy InputStream-re vezessem a System.in-t és emellett más forrásból is tudjak rá írni? Avagy a billentyűzetes System.in-ről érkező input működjön tovább, de egy függvényből is tudjak rá inputot küldeni?Az már egy mellékes kérdés hogy az out stream-el is játszani kell, de bízom benne ha az inputra megtalálom a megoldást, akkor az is menni fog
-
tick
aktív tag
Üdv újra!
Main.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath();
Ha eclipse-ben exportnál "extract required libraries" opciót választom akkor a fenti kód a .jar fájl elérési útvonalát adja meg, "package required libraries" esetén pedig null-t.
A kérdés az lenne hogy miért? És mi működne package esetén? OS-től függetlenül -
tick
aktív tag
Köszönöm szépen a választ pont így oldottam meg végül a 2-es pont problémáját.
Nem házi feladat, de nem is komoly dolog. Szükséges valahogy tárolnom az user-pass kombót. Nem szerettem volna plain textként így jött az AES + bináris amit egy egyéni key/pin véd. Ha valaki elég ügyes hogy kiszedje/feltörje, akkor sincs kockázat. -
tick
aktív tag
AES128 bit kulcsot szeretnék generálni String input alapján. A String hossza bármi lehet. A függvény a következőt csinálná:
-Ha a String 16 karakter akkor nincs teendő
-Ha több mint 16 karakter akkor ArrayUtils.subArray(key.toCharArray(), 0, 16) majd ezt a végén vissza String-gé
-Ha kevesebb mint 16 karakter (N hosszú), akkor key.toCharArray(), egy új CharArray-be N-ig a key értékei, azon felül pedig egy karakter. A példában "c".Így minden esetben 16 karakter hosszú kulcsot kapok. Ez működik is (String.valueOf-fal). Viszont nem 128 bit lesz a végeredmény.
16 vagy több karakterrel működik hibátlanul. A probléma akkor keletkezik ha ki kell egészíteni plusz karakterekkel: Invalid AES key length: 28 bytes
Jelenleg sysout esetén nem is a key-t kapom meg, hanem a referenciáját.String pin = "1234";
...
...
// így fut le ha 16-nál rövidebb a pin
String[] keyArr = new String[16];
pinArr = pin.toCharArray();
for(int i=0;i<pin.length();i++) {
keyArr[i] = String.valueOf(pinArr[i]);
}
for(int i = pin.length();i<16;i++) {
keyArr[i] = "c";
}
key = String.valueOf(keyArr);
System.out.println(key); // String helyett reference
Key aesKey = new SecretKeySpec(key.getBytes(), "AES");
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE, aesKey); // java.security.InvalidKeyException: Invalid AES key length: 28 bytes
byte[] encrypted = cipher.doFinal(password.getBytes()); -
tick
aktív tag
Sziasztok,
Arrays.toString(charArr) után Eclipse konzol tömbként írja ki a stringem. (getClass String-nek ismeri fel) Ennek mi lehet az oka?
Konkrétan így:
[1, 2, 3, 4, 5, c, c, c, c, c, c, c, c, c, c, c]A másik nagy gondom hogy a felső 16 karakter így 48 bájtot foglal. Míg ha simán Stringként megadom csak 16-ot. Hogyan lehetne ezt orvosolni?
AES kulcs ellenőrzésről lenne szó. Ha nem éri el a 16 karaktert/bájtot akkor hozzádobál c betűket.
-
tick
aktív tag
Tudtok valami egyszerűen használható profilert? Esetleg olyat ami flame chartot is képes produkálni? Opcionálisan könnyen érthető leírást hozzá?
Találtam sok mindent, de vagy bele sem tudtam kezdeni a leírás alapján, vagy szimplán nem sikerült -
tick
aktív tag
válasz
WonderCSabo #7496 üzenetére
Működik! Nem teljesen értem hogyan, hiszen maga a selenium is tartalmazza és nincs egy importom sem, ami direktben a külön függő HtmlUnit-ot hívná. De működik, Köszönöm!
Egyébként azért fontos, mert a 2.15-ös HtmlUnit nem volt hajlandó behozni oldalakat ahol tíltva van az SSLv3. Egy módosítást találtam megoldásként, ami 2.16-ba került be. -
tick
aktív tag
Azt használom most, viszont macerás. Néha egyszerűen minden ok nélkül megáll vagy elhagyja a cookie-kat és emiat logoutol a webappból. Sőt 3-ből ~1-szer az első get nem is kap választ és timeout-ol. 3-ból 2-szer pedig egy másodpercen belül megvan. Nincs network probléma, a forrás konstans elérhető.
Windows esetén még könnyen mellékelem a jar-ba és kimásolom az azonos mappába futáskor, még a bináris beállítása előtt.
Linux esetén viszont ha nincs telepítve, akkor nem hajlandó futni. (Fedora alapú linuxnál pedig működésre sem tudtam bírni, de ez nem jelent problémát, mivel az egyetlen redhat-es emberke átmigrál)@WonderCSabo: Selenium átalakította, itt látszik is a rengeteg selenium import.
-
tick
aktív tag
válasz
WonderCSabo #7491 üzenetére
Próbáltam cserélni, de utána class not found errorokat kaptam sajnos
(a file nevet is cseréltem, és próbáltam újra importálni is) -
tick
aktív tag
Selenium jar-ban vajon lehetne manuálisan frissíteni htmlunit-ot? Google nem siet a poodle reakcióval :/
-
tick
aktív tag
válasz
dabadab #7467 üzenetére
Nincs exception ez a bajom, már kigugliztam volna a megoldást
Megpróbáltam több féle módszert is amit google elém tárt, de egyszerűen egyik sem működik. És nem értem miért.Így működik!!
Köszi!
if(!logFile.exists()){
logFile.createNewFile();
}
FileWriter fw = new FileWriter(logFile, true);
fw.write(s.toString() + System.getProperty("line.separator"));
fw.close(); -
tick
aktív tag
Üdv!
Egy saját "loggert" használok és console mellett fájlba is szeretném kiírni. A fájlt létrehozza sikeresen, de egyszerűen nem ír bele semmit. Mi lehet a gond?
public class Logger {
private static File logFile = new File(ClassLoader.getSystemClassLoader().getResource(".").getPath()+"log.txt");
public static void log(Object s) {
if(!Settings.logging) return;
//console
System.out.println("L: "+s);
//file
try {
if(!logFile.exists()){
logFile.createNewFile();
}
FileWriter fw = new FileWriter(logFile.getName(),true);
BufferedWriter bw = new BufferedWriter(fw);
bw.newLine();
bw.write(s.toString());
bw.close();
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
} -
tick
aktív tag
próbálta már valaki a VS "code" (ingyenes, Linuxon is futó) verzióját? én vagyok béna vagy tényleg nem tud java-t futtatni?
-
tick
aktív tag
válasz
szcsaba1994 #6737 üzenetére
Agyhullám Java, én ezt javaslom
-
tick
aktív tag
válasz
plaschil #6664 üzenetére
Csak WebDriverről tudok nyilatkozni. Ott findElement helyett findElements és megkeresed hányadik kell
pl:
ArrayList<WebElement> elements =
driver.findElements(By.xpath("//input[contains(@id,'TextBox_szerzodes')]"));
System.out.println(elements.get(0).getText());más: nem tiszta miért kellett lassítani, WebDriverben van wait:
WebDriverWait wait = new WebDriverWait(driver, 10);
wait.until(ExpectedConditions.presenceOfElementLocated(By.id("id"))); -
tick
aktív tag
válasz
Aethelstone #6637 üzenetére
Köszönöm az infokat
-
tick
aktív tag
válasz
WonderCSabo #6632 üzenetére
Köszönöm.
Egy újabb kérdésem lenne: adott egy osztály ami Runnable-t implementál sok hosszú egymást követő folyamatból áll. Hogyan tudnám megszakítani a futását?
While-ba rakva a flaget változtatva csak akkor áll meg, ha már a végére ért.ezt próbáltam:
public void run() {
while(!Thread.currentThread().isInterrupted()) {
//do time consuming stuff
}
}
public void stop() {
Thread.currentThread().interrupt();
} -
tick
aktív tag
Üdv!
A lenti kód (természetesen más szöveggel) azt hivatott bemutatni jelenleg hogy indítok el egy job-ot a lenyomott menü szövege alapján. Van erre valami elegánsabb megoldás? (a menü elemek a saját action commandjukat küldik egy listenernek)
[azon kívül hogy elrejtem valami hasonló metódusba:
getJob(String jobname).run(); ]if(owner.getAction().name().equals("Do this then that") new WorkerJobDoThisThenThat.run();
if(owner.getAction().name().equals("Start something") new WorkerStartSomething.run();
if(owner.getAction().name().equals("Execute this") new WorkerExecuteThis.run();
if(owner.getAction().name().equals("Running out of ideas") new WorkerRunningOutOfIdeas.run();
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Samsung Galaxy A22 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- Huawei P20 Lite 64GB, Kártyafüggetlen, 1 Év Garanciával
- REFURBISHED és ÚJ - HP Thunderbolt Dock G2 230W docking station (3TR87AA)
- BESZÁMÍTÁS! Asus Prime A320M R5 1600 16GB DDR4 512GB SSD GTX 1050 Ti 4GB Rampage SHIVA TT 500W
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest