Jump to content

Question

Posted

Hey guys, I have another question for you.....

Whenever i try to name a pet inside game I got this error: This is the image of the problem.... Sorry for quallity I did it with phone....

 

Here is the SQL of my pets table in my DB

 

-- Table structure for pets
-- ----------------------------
DROP TABLE IF EXISTS `pets`;
CREATE TABLE `pets` (
  `item_obj_id` int(10) unsigned NOT NULL,
  `name` varchar(16) DEFAULT NULL,
  `level` smallint(2) unsigned NOT NULL,
  `curHp` int(9) unsigned DEFAULT '0',
  `curMp` int(9) unsigned DEFAULT '0',
  `exp` bigint(20) unsigned DEFAULT '0',
  `sp` int(10) unsigned DEFAULT '0',
  `fed` int(10) unsigned DEFAULT '0',
  `ownerId` int(10) NOT NULL DEFAULT '0',
  `restore` enum('true','false') NOT NULL DEFAULT 'false',
  PRIMARY KEY (`item_obj_id`),
  KEY `ownerId` (`ownerId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Any ideas ?? :/ 

9 answers to this question

Recommended Posts

  • 1
Posted

Verify PetNameTable line 45. Most probably it misses the argument (invalid parameters count), or the String parameter to test is either edited in the method itself or the verification check for "null" String is missing.

  • 0
Posted (edited)
3 hours ago, Tryskell said:

Verify PetNameTable line 45. Most probably it misses the argument (invalid parameters count), or the String parameter to test is either edited in the method itself or the verification check for "null" String is missing.

/*
 * Copyright (C) 2004-2016 L2J DataPack
 * 
 * This file is part of L2J DataPack.
 * 
 * L2J DataPack is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * L2J DataPack is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */
package handlers.targethandlers;

import com.l2jserver.gameserver.handler.ITargetTypeHandler;
import com.l2jserver.gameserver.model.L2Object;
import com.l2jserver.gameserver.model.actor.L2Character;
import com.l2jserver.gameserver.model.skills.Skill;
import com.l2jserver.gameserver.model.skills.targets.L2TargetType;

/**
 * Target Pet handler.
 * @author UnAfraid
 */
public class Pet implements ITargetTypeHandler
{
	@Override
	public L2Object[] getTargetList(Skill skill, L2Character activeChar, boolean onlyFirst, L2Character target)
	{
		if (activeChar.hasPet())
		{
			return new L2Character[]
			{
				activeChar.getSummon()
			};
		}
		return EMPTY_TARGET_LIST;
	}
	!!!!!!!! >>>HERE SHOULD BE 45 <<<< !!!!!!!!!!!!!1
	@Override
	public Enum<L2TargetType> getTargetType()
	{
		return L2TargetType.PET;
	}
}

Is this what are we talking about ? But 45 doesn't have anyting

Edited by milosvamp
  • 0
Posted
7 hours ago, SweeTs said:

He said PetNameTable, you post Pet, nice. 

damn, there is no such a file......or you mean in core ?

  • 0
Posted (edited)
On 12/19/2017 at 11:27 AM, Tryskell said:

Verify PetNameTable line 45. Most probably it misses the argument (invalid parameters count), or the String parameter to test is either edited in the method itself or the verification check for "null" String is missing.

Here is it 

/*
 * Copyright (C) 2004-2016 L2J Server
 * 
 * This file is part of L2J Server.
 * 
 * L2J Server is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * L2J Server is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */
package com.l2jserver.gameserver.data.sql.impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;

import com.l2jserver.Config;
import com.l2jserver.commons.database.pool.impl.ConnectionFactory;

public class PetNameTable
{
	private static Logger LOGGER = Logger.getLogger(PetNameTable.class.getName());
	
	public static PetNameTable getInstance()
	{
		return SingletonHolder._instance;
	}
	
	public boolean doesPetNameExist(String name)
	{
		try (Connection con = ConnectionFactory.getInstance().getConnection();
			PreparedStatement ps = con.prepareStatement("SELECT name FROM pets WHERE name=?"))
		{
--------------->>>LINE 45>>>>>>>>	try (ResultSet rs = ps.executeQuery()) <<<<LINE 45 <<<<<<<--------------------
			{
				return rs.next();
			}
		}
		catch (SQLException e)
		{
			LOGGER.log(Level.WARNING, getClass().getSimpleName() + ": Could not check existing petname:" + e.getMessage(), e);
		}
		return false;
	}
	
	public boolean isValidPetName(String name)
	{
		return Config.PET_NAME_TEMPLATE.matcher(name).matches();
	}
	
	private static class SingletonHolder
	{
		protected static final PetNameTable _instance = new PetNameTable();
	}
}

 

Edited by milosvamp
  • 0
Posted (edited)

as tryskell mentioned. you are missing one line there.

 

before the line n45

ps.setString(1,name);

 

Also, remove the 2nd try statement

Edited by melron
  • 0
Posted
4 hours ago, melron said:

as tryskell mentioned. you are missing one line there.

 

before the line n45


ps.setString(1,name);

 

Also, remove the 2nd try statement

so to remove this  

try (ResultSet rs = ps.executeQuery())
			{
				return rs.next();
			}
		}

and add this: 

ps.setString(1,name);

pls tell me is it literally so ?

 

1 hour ago, Tryskell said:

ps.setString(1,name);

ResultSet rs = ps.executeQuery();
return rs.next();

The second try is normally needed to correctly close the rs, but using "return" also closes it. Eclipse maybe still needs it to avoid the ressource leak warning.

 

And I was right, it was missing the parameter.

Thank you very much for your help.

 

4 hours ago, melron said:

as tryskell mentioned. you are missing one line there.

 

before the line n45


ps.setString(1,name);

 

Also, remove the 2nd try statement

Thank you.

 

On 20/12/2017 at 1:23 AM, SweeTs said:

Core.. Error last line, you have the location. 

Thank you for joining our conversation and your help.

  • 0
Posted (edited)
ps.setString(1,name);

ResultSet rs = ps.executeQuery();
return rs.next();

The second try is normally needed to correctly close the rs, but using "return" also closes it. Eclipse maybe still needs it to avoid the ressource leak warning.

 

And I was right, it was missing the parameter.

Edited by Tryskell
Guest
This topic is now closed to further replies.


  • Posts

    • The Telegram team is rolling out a new batch of Stars-only gifts you’ll be able to mint as NFTs. Don’t miss your chance to join the next Telegram trend and earn from it! Buy Telegram Stars cheap and KYC-free 1 Star from $0.0149 (min. 50 Stars, bulk discounts available) Promo code STARS5 — 5 % off Pay any way you like: bank cards · crypto · other popular methods How to purchase: ➡Online Store — Click ➡ Telegram bot — Click Other services: ➡ SMM panel — Click Regular buyers get extra discounts and promo codes. Support: ➡ Telegram: https://t.me/solomon_bog ➡ Telegram channel: https://t.me/accsforyou_shop ➡ Discord: https://discord.gg/y9AStFFsrh ➡ WhatsApp: https://wa.me/79051904467 ➡ Email: solomonbog@socnet.store Use these contacts to discuss wholesale orders, partnerships (current list: https://socnet.bgng.io/partners) or to become a supplier. SocNet — your shop for digital goods and premium subscriptions
    • The Telegram team is rolling out a new batch of Stars-only gifts you’ll be able to mint as NFTs. Don’t miss your chance to join the next Telegram trend and earn from it! Buy Telegram Stars cheap and KYC-free 1 Star from $0.0149 (min. 50 Stars, bulk discounts available) Promo code STARS5 — 5 % off Pay any way you like: bank cards · crypto · other popular methods How to purchase: ➡Online Store — Click ➡ Telegram bot — Click Other services: ➡ SMM panel — Click Regular buyers get extra discounts and promo codes. Support: ➡ Telegram: https://t.me/solomon_bog ➡ Telegram channel: https://t.me/accsforyou_shop ➡ Discord: https://discord.gg/y9AStFFsrh ➡ WhatsApp: https://wa.me/79051904467 ➡ Email: solomonbog@socnet.store Use these contacts to discuss wholesale orders, partnerships (current list: https://socnet.bgng.io/partners) or to become a supplier. SocNet — your shop for digital goods and premium subscriptions
    • 📜 • Mass PVP – Craft – Progressive Server (ITEMS, ARMOR, WEAPONS, ETC) 🕹️ • Chronicles: Lineage 2 - Interlude (C6) 🛠️ • Retail status 🕒 • Server Time: GMT -3 🏙️ • Main Town: Giran ✨ • Teleportation for all Towns, Gk Global 🛡️ • NPC BUFFER - GMSHOP B-GRADE - DONATION SHOP - AUCTION MANAGER 🐉 • Epic Bosses: Chaotic Zones 🔁 • Protection respawn: 15 seconds ⏰ • Restart Server: 05:00 AM Today 💸 • RTM allowed between players (ask Staff if in doubt) 📊 SERVER RATES: • EXP: x8 • SP: x10 • Adena: x3 • Seal Stone: x3 • Drop: x3 • Spoil: x5 • Raid EXP/SP/Drop: x3 • Premium Rates: x2 🌐 Website: https://www.l2roosters.com 💬 Discord: https://discord.gg/cUyYXrfy 🔥 Join us now and forge your legacy at Roosters Gaming!
    • Hello, lovely people, how are you? I just finished compiling the L2jFrozen project Rev: 1132 (very old). I don't mind it being too old, since the project is for me and my children. (LAN/Offline) it's not meant to be put online. I want to learn and give my children more comfort when playing. And for my part, I also experiment with the game. My problem is that I don't know much about the subject. I was able to make some basic configurations to my liking and that of my children, but it never compiles or anything like that... I would really need help from you, the community... I simply want to remove all subclass restrictions, remove the restriction on "Overlord, Warsmith, and Dark Elf subclasses with White Elves and vice versa." Thank you very much in advance! Greetings, community.
    • Warriors, prepare for a new era! We are pleased to announce that on July 12, with the morning restart, Airin will be updated to Chronicle 4: Scions of Destiny. - Open Beta Testing (OBT) will begin on July 9. Everyone will be able to test the update in advance, including class mechanics, quests, and new content. - The Clan Hall Auction will take place on July 13. We’ve also prepared a traditional bonus start - details will be shared in the coming days. The full list of changes is available in the official patch notes. Thank you for your support and participation in the project. See you in Chronicle 4! The game client download will be available soon.
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock