# get list of Service Integration Buses
buses=AdminTask.listSIBuses();
# get list of SIB Engines
for bus in buses.split(lineseparator):
AdminTask.listSIBEngines('[-bus '+bus.split('(')[0]+']').split('(')[0]
# get SIB the status of engine
sibengines=AdminControl.queryNames('WebSphere:type=SIBMessagingEngine,*').split(lineseparator)
for sibengine in sibengines:
print sibengine.split('name=')[1].split(',')[0]+" "+AdminControl.invoke(sibengine,'state');
WebSphere Application Server - development
čtvrtek 12. srpna 2021
Get the Service Integration Bus Messagin Engine State
Obtain the SystemOut.log, SystemErr.log, native_stdout, native_stderr location using wsadmin
server=AdminConfig.getid('/Node: Custom01Node /Server: server1');
systemoutlog=AdminConfig.showAttribute(server, 'outputStreamRedirect');
systemerrorlog=AdminConfig.showAttribute(server, 'errorStreamRedirect');
processDef = AdminConfig.list( 'JavaProcessDef', server )
nativelog=AdminConfig.showAttribute(processDef, 'ioRedirect');
adminOperations = AdminControl.queryNames('WebSphere:*,type=AdminOperations,process=server1')
print AdminControl.invoke(adminOperations, 'expandVariable', [AdminConfig.showAttribute(systemoutlog, 'fileName')])
print AdminControl.invoke(adminOperations, 'expandVariable', [AdminConfig.showAttribute(systemerrorlog, 'fileName')])
print AdminControl.invoke(adminOperations, 'expandVariable', [AdminConfig.showAttribute(nativelog, 'stdoutFilename')])
print AdminControl.invoke(adminOperations, 'expandVariable', [AdminConfig.showAttribute(nativelog, 'stderrFilename')])
čtvrtek 6. června 2019
SOAP UI Java API - jak zavolat web service request z Javy
import com.eviware.soapui.impl.wsdl.WsdlInterface;
import com.eviware.soapui.impl.wsdl.WsdlOperation;
import com.eviware.soapui.impl.wsdl.WsdlProject;
import com.eviware.soapui.impl.wsdl.WsdlRequest;
import com.eviware.soapui.impl.wsdl.WsdlSubmit;
import com.eviware.soapui.impl.wsdl.WsdlSubmitContext;
import com.eviware.soapui.model.iface.Response;public class App
{
public static void main( String[] args )
{
try {
WsdlProject soapUiProject = new WsdlProject("/tmp/SOAP_UI_PROJECT.xml" );
WsdlInterface wsdlInterface = (WsdlInterface)soapUiProject.getInterfaceAt(0);
WsdlOperation searchPersonMultiOperation = wsdlInterface.getOperationByName("searchName");
WsdlRequest request = searchPersonMultiOperation.getRequestByName("001_Ian_Flemming");
WsdlSubmitContext wsdlSubmitContext = new WsdlSubmitContext( request );
WsdlSubmit<WsdlRequest> submit = (WsdlSubmit<WsdlRequest>) request.submit( wsdlSubmitContext, false );
Response response = submit.getResponse();
System.out.println(request.getRequestContent());
System.out.println("-------------------");
System.out.println(response.getContentAsString());
} catch (Exception e) {
e.printStackTrace();
}
}
}
úterý 2. ledna 2018
JDBC připojení do SQLite databáze
Pro JDBC připojení do SWQLite jsem použil následující JDBC driver:
https://bitbucket.org/xerial/sqlite-jdbc/downloads/
Name: SQLite
Example URL: jdbc:sqlite:sqlite_databsase_file_path
Website URL: https://bitbucket.org/xerial/sqlite-jdbc
Extra Class Path: přidat cestu k jar jdbc driveru (sqlite-jdbc-3.21.0.jar)
Class Name: org.sqlite.JDBC
Připojení do databáze potřebuje pouzte jeden parametr a to URL pro připojení jdbc:sqlite:<cesta k databázovému souboru> například jdbc:sqlite:C:/temp/home-assistant-v2.db. Tento typ připojení nepodporuje víceuživatelský přístup, proto může být k databázi připojení pouze jeden klient. Pokud tedy databázi používá nějaká aplikace, musíte aplikaci před připojení Squirrel vypnout.
https://bitbucket.org/xerial/sqlite-jdbc/downloads/
Nastavení Squirrel pro připojení do SQLite
Ve Squirrel je potřeba přidat nový driver viz následující obrázek.Name: SQLite
Example URL: jdbc:sqlite:sqlite_databsase_file_path
Website URL: https://bitbucket.org/xerial/sqlite-jdbc
Extra Class Path: přidat cestu k jar jdbc driveru (sqlite-jdbc-3.21.0.jar)
Class Name: org.sqlite.JDBC
pátek 25. srpna 2017
SOA a Microservices
Odkaz na článek porovnání konceptů SOA a microservices
https://www.ibm.com/developerworks/websphere/library/techarticles/1601_clark-trs/1601_clark.htmlstředa 21. června 2017
Jak použít automatické testování REST ve Fitnesse?
Fitnesse - nástroj pro testery, umožňuje psát testy ve formě wiki stránek, spouštět je, generovat reporty a zobrazovat historii provedených testů.
Fitnesse je rozšiřitelný ve formě tzv. fixture. Pro REST rozhraní jsou také možná fixture. Jedním z nich je RestFixture. Náved na přípravu prvního fixture je:
https://stackoverflow.com/questions/35753103/workflow-of-creating-tests-using-restfixture
Fixture je připravený jako Maven archetype. Postup podle návodu zafungoval napoprvé.
Drobné rozdíly:
1)
v dependency jsem použil novější verzi Fitnesse:
<dependency>
<groupId>org.fitnesse</groupId>
<artifactId>fitnesse</artifactId>
<version>20161106</version>
</dependency>
2)
pro start jsem musel použít příkaz call start.bat, samotný start.bat mi nezafungoval správně.
Postup - přesně podle https://stackoverflow.com/questions/35753103/workflow-of-creating-tests-using-restfixture :
1) Připravit mvn projekt se základem fixture z již hotového připraveného archetypu.
mvn archetype:generate -DgroupId=com.ibm.cz.fitnesse.rest
.sample -DartifactId=scratch -DarchetypeArtifactId=maven-archetype-quickstart -D
interactiveMode=false
2) Přidat dependency
<dependency>
<groupId>smartrics.restfixture</groupId>
<artifactId>smartrics-RestFixture</artifactId>
<version>4.1</version>
</dependency>
<dependency>
<groupId>org.fitnesse</groupId>
<artifactId>fitnesse</artifactId>
<version>20161106</version>
</dependency>
a odmazat App.java ze src\main\java\com\ibm\cz\fitnesse\rest\sample
3) Přidat
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<configuration>
<outputDirectory>${project.build.directory}/dependencies</outputDirectory>
</configuration>
<goals>
<goal>copy-dependencies</goal>
</goals>
</execution>
</executions>
</plugin>
4) Spustit mvn clean package
5) Připravit start.bat s následujícím obsahem:
setLocal EnableDelayedExpansion
set CLASSPATH="
for /R target\dependencies %%a in (*.jar) do (
set CLASSPATH=!CLASSPATH!;%%a
)
set CLASSPATH=!CLASSPATH!"
java -cp !CLASSPATH! fitnesseMain.FitNesseMain -p 9090 -d src\main\resources -e 0
6) Spustit start.bat: call start.bat
POZOR: pouze start.bat na WIN7 nezafunguje správně
7) Vyzkoušet http://localhost:9090
Fitnesse je rozšiřitelný ve formě tzv. fixture. Pro REST rozhraní jsou také možná fixture. Jedním z nich je RestFixture. Náved na přípravu prvního fixture je:
https://stackoverflow.com/questions/35753103/workflow-of-creating-tests-using-restfixture
Fixture je připravený jako Maven archetype. Postup podle návodu zafungoval napoprvé.
Drobné rozdíly:
1)
v dependency jsem použil novější verzi Fitnesse:
<dependency>
<groupId>org.fitnesse</groupId>
<artifactId>fitnesse</artifactId>
<version>20161106</version>
</dependency>
2)
pro start jsem musel použít příkaz call start.bat, samotný start.bat mi nezafungoval správně.
Postup - přesně podle https://stackoverflow.com/questions/35753103/workflow-of-creating-tests-using-restfixture :
1) Připravit mvn projekt se základem fixture z již hotového připraveného archetypu.
mvn archetype:generate -DgroupId=com.ibm.cz.fitnesse.rest
.sample -DartifactId=scratch -DarchetypeArtifactId=maven-archetype-quickstart -D
interactiveMode=false
2) Přidat dependency
<dependency>
<groupId>smartrics.restfixture</groupId>
<artifactId>smartrics-RestFixture</artifactId>
<version>4.1</version>
</dependency>
<dependency>
<groupId>org.fitnesse</groupId>
<artifactId>fitnesse</artifactId>
<version>20161106</version>
</dependency>
a odmazat App.java ze src\main\java\com\ibm\cz\fitnesse\rest\sample
3) Přidat
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<configuration>
<outputDirectory>${project.build.directory}/dependencies</outputDirectory>
</configuration>
<goals>
<goal>copy-dependencies</goal>
</goals>
</execution>
</executions>
</plugin>
4) Spustit mvn clean package
5) Připravit start.bat s následujícím obsahem:
setLocal EnableDelayedExpansion
set CLASSPATH="
for /R target\dependencies %%a in (*.jar) do (
set CLASSPATH=!CLASSPATH!;%%a
)
set CLASSPATH=!CLASSPATH!"
java -cp !CLASSPATH! fitnesseMain.FitNesseMain -p 9090 -d src\main\resources -e 0
6) Spustit start.bat: call start.bat
POZOR: pouze start.bat na WIN7 nezafunguje správně
7) Vyzkoušet http://localhost:9090
středa 18. ledna 2017
Vyhození fault Java komponenty v Integration Designer
/**
* Method generated to support implementation of operation "operation1" defined for WSDL port type
* named "SimpleIntf".
*
* The presence of commonj.sdo.DataObject as the return type and/or as a parameter
* type conveys that it is a complex type. Please refer to the WSDL Definition for more information
* on the type of input, output and fault(s).
*/
public DataObject operation1(DataObject input1) throws Throwable{
Service service = locateService_SimpleIntfPartner();
try {
service.invoke("operation1", input1);
} catch (Throwable t) {
System.out.println("Nastala chyba");
com.ibm.websphere.bo.BOFactory boFactory = (com.ibm.websphere.bo.BOFactory) ServiceManager.INSTANCE.locateService("com/ibm/websphere/bo/BOFactory");
DataObject fault = boFactory.create("http://JMSDemoModule", "ServiceFault");
fault.setString("error", t.getMessage());
throw new ServiceBusinessException(fault);
}
return input1;
}
Přihlásit se k odběru:
Příspěvky (Atom)

