Getting the WSDL documents
hi,
i need to get the WSDL document that describes the service that the user selects. but some how, my codes now does get a WSDL document but it does not describes the web seervice... more like describing the organization...
the following is my codes:
* Author : Lim Wei, Melissa Koh
* Admin# : 002068s, 002915l
* Class Name : Naics.java
* Date : October 21, 2002
* Description : Connects to UDDI registry as selected by user.
package FYPJ;
import javax.xml.registry.*;
import javax.xml.registry.infomodel.*;
import java.net.*;
import java.util.*;
import java.lang.*;
public class NaicsQuery{
private Connection m_conn;
private int cntServices = 0;
Vector servicesAva = new Vector();
// empty constructor
public NaicsQuery()
public void makeConnection(String conn)
Properties props = new Properties();
props.setProperty("javax.xml.registry.queryManagerURL", conn);
props.setProperty("javax.xml.registry.factoryClass",
"com.sun.xml.registry.uddi.ConnectionFactoryImpl");
try
ConnectionFactory factory = ConnectionFactory.newInstance();
factory.setProperties(props);
this.m_conn = factory.createConnection();
System.out.println("Connection to UDDI created");
catch (Exception e)
e.printStackTrace();
if (this.m_conn != null)
try
this.m_conn.close();
catch (Exception eb)
public void executeQuery(String serviceName)
RegistryService rs;
BusinessQueryManager bqm;
BusinessLifeCycleManager blcm;
try
// Get registry service & managers
rs = m_conn.getRegistryService();
bqm = rs.getBusinessQueryManager();
blcm = rs.getBusinessLifeCycleManager();
System.out.println("Got registry service, query manager, and life cycle manager.");
Collection classifications = new ArrayList();
classifications.add(serviceName);
BulkResponse response = bqm.findOrganizations(null, classifications, null, null, null, null);
Collection orgs = response.getCollection();
// Display info about the organizations found
Iterator orgIter = orgs.iterator();
while(orgIter.hasNext())
//Concept concept = (Concept)orgIter.next();
Organization org = (Organization)orgIter.next();
System.out.println("Organization Name: " + org.getName().getValue());
System.out.println("Organization Description: " + org.getDescription().getValue());
System.out.println("Organization Key ID: " + org.getKey().getId());
//concept = (Concept)bqm.getRegistryObject(concept.getKey().getId());
//String name = getName(concept);
Collection links = org.getExternalLinks();
if (links.size() > 0)
ExternalLink link = (ExternalLink)links.iterator().next();
System.out.println("\tURL to WSDL document: " + link.getExternalURI());
// Display primary contact information
User pc = org.getPrimaryContact();
if(pc != null)
PersonName pcName = pc.getPersonName();
System.out.println("Contact name: " + pcName.getFullName());
Collection phNums = pc.getTelephoneNumbers(null);
Iterator phIter = phNums.iterator();
while(phIter.hasNext())
TelephoneNumber num = (TelephoneNumber)phIter.next();
System.out.println("Phone number: " + num.getNumber());
Collection eAddrs = pc.getEmailAddresses();
Iterator eaIter = eAddrs.iterator();
while(phIter.hasNext())
System.out.println("Email Address: " + (EmailAddress)eaIter.next());
// Display service and binding information
Collection services = org.getServices();
Iterator svcIter = services.iterator();
while(svcIter.hasNext())
Service svc = (Service)svcIter.next();
System.out.println("Service name: " + svc.getName().getValue());
System.out.println(" Service description: " + svc.getDescription().getValue());
cntServices ++;
servicesAva.add((String)svc.getName().getValue() + " (" + org.getName().getValue() + ")");
Collection serviceBindings = svc.getServiceBindings();
Iterator sbIter = serviceBindings.iterator();
while(sbIter.hasNext())
ServiceBinding sb = (ServiceBinding)sbIter.next();
System.out.println(" Binding description: " + sb.getDescription().getValue());
System.out.println(" Access URI: " + sb.getAccessURI());
Collection specLinks = sb.getSpecificationLinks();
Iterator slIter = specLinks.iterator();
while(slIter.hasNext())
SpecificationLink spLink = (SpecificationLink)slIter.next();
System.out.println(" Usage description: " + spLink.getUsageDescription());
Collection useParam = spLink.getUsageParameters();
Iterator useIter = useParam.iterator();
while(useIter.hasNext())
String usage = (String)useIter.next();
System.out.println(" Usage Parameter: " + usage);
System.out.println("-----------------------------------");
System.out.println("*****************************************************************");
catch(Throwable e)
e.printStackTrace();
finally
// At end, close connection to registry
if(m_conn != null)
try
this.m_conn.close();
catch(JAXRException jaxre)
public int getNumServices()
return cntServices;
public Vector getServicesAva()
return servicesAva;
/*public static void main(String args[])
String queryURL = "http://uddi.ibm.com/ubr/inquiryapi";
if(args.length != 0)
System.out.println("Error!");
System.exit(1);
NaicsQuery nq = new NaicsQuery();
nq.makeConnection(queryURL);
nq.executeQuery();
how should i go abt getting the WSDL document i want???
your help will be appreciated...
thanx in advance...
- trazzo
Hi,
What a lot of code! I think this is a lot easier than that.
You need to use the WSDL2Java command. See tutorials.
This will find a wsdl file and create the java files necessary.
You then need to compile tese java files
You also nned a client (more of that another day/night.
Compile this also
RUN.
best
kev
Similar Messages
-
What is causing this JDeveloper error DCA-40002 in the WSDL document
I'm attempting to import a WSDL document in Jdev (11.1.1) and I'm getting the following error;
DCA-40002: The WSDL document is invalid due to the following reason: oracle.j2ee.ws.mdds.AtomicPrototypeImpl cannot be cast to oracle.websevices.mdds.ComplexPrototype.
This WSDL is being used by other applications without any problems. Also, I recall importing this same WSDL into JDev 10g without any errors.
Thanks.Last night I revisited the problem and discovered that I had not emptied the Print Shop Importer from the trash. I emptied the trash, restarted the computer, and the error messages stopped. Also before I restarted the computer I noted that Time Machine had stopped backing up and that Spotlight was indexing the hard drive. I blocked the indexing before I restarted the computer. In any event the original problem seems to be fixed.
-
Error "The WSDL document could not be understood by the rendering engine"
I am trying to invoke a web service in an APEX page. However for various web services i get the message "The WSDL document could not be understood by the rendering engine".
For example the web service "http://mrs.cmbi.ru.nl/mrsws/blast/wsdl". This URL returns a wsdl but APEX complains about the URL.
Does anybody know a public web service to be used for tesing within APEX, based upon a WSDL file?I am trying to invoke a web service in an APEX page. However for various web services i get the message "The WSDL document could not be understood by the rendering engine".
For example the web service "http://mrs.cmbi.ru.nl/mrsws/blast/wsdl". This URL returns a wsdl but APEX complains about the URL.
Does anybody know a public web service to be used for tesing within APEX, based upon a WSDL file? -
Get the WSDL-File used for proxy generation
Hello everybody!
I created a Web Service Proxy:
SE80 -> Select Package -> Enterprise Services -> Client Proxies -> New -> WSDL Source: Local File.
Everything worked out fine. I was able to create that Proxy.
Now I would like to look at the WSDL-File that has been used:
If I take a look at that Proxy by SE80 -> Select Package -> Enterprise Services -> Client Proxies -> [Select Proxy] -> Display in new Window -> Goto: The Menue Entry "Display WSDL Document" unfortunately is disabled.
I have not configured the integration builder.
Is there a possibility to get the WSDL-file that has been used for the generated proxy? Does anybody know, if the WSDL-file, that has been used for the proxy generation is archived somewhere in the system?
Thanks,
AndreasHello,
Thanks for your reply.
I am using SAP ECC 6.0:
SAP_BASIS 700 0010 SAPKB70010 SAP Basis Component
SAP_ABA 700 0010 SAPKA70010 Cross-Application Component
Unfortunately the tab "Proxy Generation" at Utilities -> Settings is not available with my release.
Any other idea?
Greetings,
Andreas -
How to get the WSDL file to consume a WS from Visual Studio
Hi gurus:
I've created a receiver SOAP adapter in my XI system that could be invoked by:
http://xiserver:50000/XISOAPAdapter/MessageServlet?channel=:Openlab_Desarollo:CanalComunicaciones_SOAP"
It is working fine. Now I must send the WSDL file to an external enterprise so they can invoke the XI web service. Thay are using Visual Studio.
But, how could I obtain or generate the WSDL file?
Thanks in advance to all and regards,
Alejandro.Hi,
In ID, choose "Define Webservice" in Tools.
There you can provide the URl that you have given here, instead of using proposed URL.
You will get the WSDL that you can consume in Visual studio.
Regards,
Vikas -
Title says it all. I go to attach file add the fild and the first page shows up in the body of the email. How do I get the whole document to show up?
You can't get the whole document to appear on your side.
When you send it, the entire document will be sent. Normally, clicking on it will open it in preview where you can see all pages. If you want to see it in this way, just cc: or bcc: yourself on the email when you send it. -
Why can't I get the Kodak Document Print App in the UK?
Why can't I get the Kodak Document Print App in the UK?
"Apparently it's available in the US iTunes store but not here?"
Because Kodak has chosen not to make it available there.
"Can't for the life of me understand why that should be!"
You do not have to understand it for it to be so.
You can try asking Kodak, as they make the app. -
How to get the Change Document Header details for a given date
Hi All,
Can anyone help me on this Change Document Header details(CDHDR).
Better way to pull the information of Change Document Header details(CDHDR). No Index is maintained for the tables.
So please suggest better Optimising techniques to get the Change Document Header details(CDHDR).
Using this Function module : CHANGEDOCUMENT_READ_HEADERS how to import the DATE_OF_CHANGE.
Thanks in advance
Regards
ChakriHI,
Go through the documenattion of the FM u can get the details.. and also where used list
Regards,
Nagaraj -
SRT Framework exception: The WSDL document is not compatible with proxy
hello,
I'd like to create a logical port to my web service but when I create this type of error:
SRT Framework exception: The WSDL document is not compatible with proxy class "YAIRPORT_CO_AIRPORT_SOAP": "Unsupported Operation (s): getAirportInformationByISOCountryCode, getAirportInformationByAirportCode, getAirportInforma
someone has an idea?
thank youHi,
Most probably your class YAIRPORT_CO_AIRPORT_SOAP was't automatically generated by SAP from the .wsdl file. If so, then you have to generate it from this file and then create the logical port. For this purpose, go to se80, display the function group there you want to add the class, right-click it and choose Create -> Web Service. Then on the following screens choose Service Consumer, Local File and specify the .wsdl file for the web service you want to use. Finally specify a Package, Prefix and Transport Request, activate the changes and you're done. Now you can create the Logical Port.
Hope this helps,
Greg -
hi all,
here java people have given wsdl file to me, how to do the scenario,
and how to get the wsdl file from the java people.
regards,
priyaHello Priya,
Go to http://<hostname>:50000/wsnavigator or any other UDDI server and search for the web service to be invoked
There you can find the Webservice Definition (WSDL) file.
Check this weblog:
Invoke Webservices using SAPXI
regards
Gangaprasad -
Error loading WSDL The WSDL document could not be parsed.
Error Loading WSDL
The WSDL document could not be parsed.
The following error occured while parsing the WSDL location -
Failed to model operation: {http://xmlns.oracle.com/DataloadSOA/SubmitSvc/SubmitSvc}SubmitPayload(,) Reason: Could not find element definition for {http://www.cdisc.org/ns/odm/v1.3}Study Detail:
oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: Failed to model operation: {http://xmlns.oracle.com/DataloadSOA/SubmitSvc/SubmitSvc}SubmitPayload(,) Reason: Could not find element definition for {http://www.cdisc.org/ns/odm/v1.3}Study Detail: at oracle.sysman.emSDK.webservices.wsdlparser.ParsedWSDLFactoryImpl.getParsedWSDL(ParsedWSDLFactoryImpl.java:157) at oracle.sysman.emSDK.webservices.wsdlparser.ParsedWSDLFactoryImpl.getParsedWSDL(ParsedWSDLFactoryImpl.java:87) at oracle.sysman.emas.model.wsmgt.WSTestModel.init(WSTestModel.java:325) at oracle.sysman.emas.view.wsmgt.WSView.parseWSDL(WSView.java:169) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at com.sun.el.parser.AstValue.invoke(AstValue.java:187) at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297) at org.apache.myfaces.trinidad.component.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:46) at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102) at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96) at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96) at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:889) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:379) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:194) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.emSDK.license.LicenseFilter.doFilter(LicenseFilter.java:101) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446) at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177) at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.help.web.rich.OHWFilter.doFilter(Unknown Source) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.emas.fwk.MASConnectionFilter.doFilter(MASConnectionFilter.java:41) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:179) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.eml.app.AuditServletFilter.doFilter(AuditServletFilter.java:179) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.eml.app.EMRepLoginFilter.doFilter(EMRepLoginFilter.java:203) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.core.model.targetauth.EMLangPrefFilter.doFilter(EMLangPrefFilter.java:158) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.core.app.perf.PerfFilter.doFilter(PerfFilter.java:141) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.eml.app.ContextInitFilter.doFilter(ContextInitFilter.java:542) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119) at java.security.AccessController.doPrivileged(Native Method) at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315) at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442) at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103) at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171) at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3730) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) Caused by: oracle.webservices.mdds.MddsException: Failed to model operation: {http://xmlns.oracle.com/DataloadSOA/SubmitSvc/SubmitSvc}SubmitPayload(,) Reason: Could not find element definition for {http://www.cdisc.org/ns/odm/v1.3}Study Detail: at oracle.sysman.emSDK.webservices.wsdlparser.ParsedWSDLFactoryImpl$LocalMddsErrorHandler.failedToModelOperation(ParsedWSDLFactoryImpl.java:186) at oracle.j2ee.ws.mdds.ModuleBuilder.annotateOperation(ModuleBuilder.java:419) at oracle.j2ee.ws.mdds.ModuleBuilder.annotatePort(ModuleBuilder.java:366) at oracle.j2ee.ws.mdds.ModuleBuilder.annotateService(ModuleBuilder.java:139) at oracle.j2ee.ws.mdds.ModuleBuilder.doAnnotateModel(ModuleBuilder.java:101) at oracle.j2ee.ws.mdds.ModuleBuilder.annotateModel(ModuleBuilder.java:81) at oracle.j2ee.ws.mdds.MddsModelFactoryImpl.createModelFromWSDL(MddsModelFactoryImpl.java:92) at oracle.j2ee.ws.mdds.MddsModelFactoryImpl.createModelFromWSDL(MddsModelFactoryImpl.java:78) at oracle.sysman.emSDK.webservices.wsdlparser.ParsedWSDLFactoryImpl.getParsedWSDL(ParsedWSDLFactoryImpl.java:152) ... 80 more
View Log MessagesSaveCloseHi,
Are you able to view the wsdl in a browser?
It seems the wsdl is not deployed properly on the server. -
Where i will get the WSDL file
Dear All,
I want to get the WSDL from the server,
Actually my requirement is getting the current conversion rate from this site http://www.oanda.com
For this compulsory i want the WSDL file.
so i will get the WSDL file
where i am getting
from my local server
or from this site http://www.oanda.comHi Anusha,
You can get it fron oanda.com, from local server you can't get anything.
Regards,
Reetesh Sharma -
How can I get the help documents of Siebel CRM On Demand Answers?
How can I get the help documents of Siebel CRM On Demand Answers?
Click any help link within CRM On Demand to access the Online Help. There is a link in the top right to open the Help as a PDF file. You can even print this 777 page PDF file in part or whole if you really want to.
Mike -
The Web Service Tester cannot be invoked, because the WSDL document of the
Hi,
I'm new to using webservice. I created a web service and right mouse clicked on the serviceImpl.java and selectd 'Test Web Service'.
I got an error
"The Web Service Tester cannot be invoked, because the WSDL document of the selected service cannot be read."
Could you please help?
Thanks,
CharuneeI found that this is a bug in Jdev and it is fixed by
BUG 9153288 - D08B02C: WEBSERVICES TEST PAGE GIVES ERROR AND IS NOT DEPLOYED
Thanks,
Charunee -
Indesign CS3: How to get the current document name?
Hallo!
How do I get the name of the current document loaded in Indesign?
Thanks,
Alois Blaimer...Plese Ignore the last post...<br /><br />docRef is the UIDRef of the document. Plese consider the following code<br /><br />IDocument *docFrom = Utils<ILayoutUIUtils>()->GetFrontDocument(); <br />if (docFrom == NULL ) <br /> break; <br />UIDRef docRef = GetUIDRef(docFrom )); <br /><br />InterfacePtr<IDocument> iDocument (docRef, IID_IDOCUMENT); <br />if(iDocument == nil) <br /> break; <br /><br />PMString docName; <br />iDocument->GetName(docName);
Maybe you are looking for
-
Asset Accounting Write Up Depreciation.
Dear All Experts , I am having issue regarding Write Up depreciation. I am calculating Write Up through ABZU with Transaction Type key 711. But the concerning amount is not hitting to the GL account. Your help is highly appreciated. Thanks & Regards,
-
Error while doing cloning using Duplicate command
Hi, I am facing issue while doing clonning using duplicate command 'Active database' The error i am facing is as follows. RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS
-
How to populate the form bean object for multiselect box in struts
hi, i am using two multi select boxes,one to populate the data by getting from the data base and another to fill the items selected from the first select box to store the values in the database..i need the information (how to declare the select boxes
-
Old digital video camera connection to iMac????
I have an old Panasonic digital color CCTV camera (model WV-CL320) which I have used for years with a microscope attachment in my classroom connected to a television. I would like to be able to connect to the computer to capture images, either single
-
Chromebook 14-x050nr Not Rendering Web Page Correctly
My new 14-x050nr does not render the following web page properly: http://cloud.collectorz.com/opus1269/books Near the top left of the page are labels "Author" and "All". Left clicking on them should display a drop down menu for further selections. T